vtex-io-rbac — скилл для Claude Code: доступ к VTEX IO
Помогает настроить доступ к маршрутам и ресурсам приложения VTEX IO: роли, ресурсные политики, VRN и директивы @auth.
npx skills add vtex/skills --skill vtex-io-rbac -a claude-codeЧто делает vtex-io-rbac
Скилл разбирает, как закрыть маршруты приложения VTEX IO от посторонних. Он объясняет разницу между ролевыми политиками в policies.json и ресурсными в service.json, показывает синтаксис VRN для принципалов и подсказывает, когда нужна директива @auth в GraphQL-схеме.
Ключевое правило простое: ролевые политики работают только для связи приложение-приложение. Если эндпоинт должны вызывать пользователи или интеграции по API-ключу, нужны ресурсные политики в service.json, а маршрут помечается как "public": false. Настроите только policies.json — такие вызывающие получат 403 Forbidden, потому что ролевые политики не проверяют их токены. Это повод проверить конфигурацию, если приватный маршрут внезапно недоступен админам.
Ещё один момент: запрещающие правила перебивают разрешающие. Если широкий allow для app/* пересекается с точечным deny, запрет сработает. Обратная схема — широкий deny и точечный allow — заблокирует всё, включая то, что вы хотели открыть. Скилл не покрывает общую архитектуру сервисов, PCI-безопасность платежей и поведение префиксов маршрутов с CDN.
Какие задачи решает
- разобраться, когда хватит ролевых политик, а когда нужны ресурсные
- закрыть REST-эндпоинт от вызовов пользователями и API-ключами
- настроить авторизацию GraphQL через директиву
@auth - записать принципалов в синтаксисе VRN без ошибок
- найти причину 403 Forbidden на приватном маршруте
Примеры запросов агенту
- Настрой доступ к маршруту
/_v/private/my-app/ordersтак, чтобы его вызывали только админы и партнёрское приложение - Почему мой приватный эндпоинт отдаёт 403 пользователям, хотя политика в
policies.jsonесть? - Добавь директиву
@authв схему GraphQL для запроса заказов
Как установить vtex-io-rbac
1Через Skills CLI (Vercel)
npx skills add vtex/skills --skill vtex-io-rbac -a claude-code2Вручную: положить файлы
~/.claude/skills/vtex-io-rbac/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/vtex-io-rbac/
1Через Skills CLI (Vercel)
npx skills add vtex/skills --skill vtex-io-rbac -a codex2Вручную: положить файлы
.agents/skills/vtex-io-rbac/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add vtex/skills --skill vtex-io-rbac -a cursor2Вручную: положить файлы
.cursor/skills/vtex-io-rbac/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install vtex/skills vtex-io-rbac2Вручную: положить файлы
.github/skills/vtex-io-rbac/SKILL.md1Через Skills CLI (Vercel)
npx skills add vtex/skills --skill vtex-io-rbac -a gemini-cli2Командой платформы
gemini skills install https://github.com/vtex/skills --path skills/vtex-io-rbacВручную: положить файлы
.devin/skills/vtex-io-rbac/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add vtex/skills --skill vtex-io-rbac -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора8
Похожие
Рядом в теме «Бэкенд и API»
Всё по теме «Бэкенд и API» →Вопросы о vtex-io-rbac
Как установить vtex-io-rbac в Claude Code?
Выполните npx skills add vtex/skills --skill vtex-io-rbac -a claude-code. Скилл появится в ~/.claude/skills/vtex-io-rbac/SKILL.md.
Что делает vtex-io-rbac?
Помогает выбрать между ролевыми и ресурсными политиками доступа, настроить VRN для принципалов и авторизацию GraphQL. Заодно объясняет, почему маршрут может отдавать 403.
Чем ролевые политики отличаются от ресурсных?
Ролевые в policies.json работают только для вызовов между приложениями IO, а вызывающая сторона объявляет политику в своём manifest.json. Ресурсные в service.json открывают доступ пользователям и API-ключам, и объявлять ничего не нужно.