Перейти к содержимому

Справочник скоупов

В Opfield 2.11 определён 231 скоуп прав доступа. Ниже перечислены их точные имена и разрешаемые действия. Права назначаются через группы или дополнительные права пользователя. Инструкции — в разделах «Пользователи и группы», «Ограничение доступа папкой» и «API-токены, OAuth и MCP». Скоупы, переименованные или удалённые в 2.11, перечислены в разделе «Устаревшие имена скоупов».

  • Ограничения: Ресурс означает, что скоуп поддерживает ограничение по ресурсу; Папка — что можно также выбрать папку. — означает, что у базового скоупа нет ограничения по ресурсу. Для скоупов интеграций Git ресурсом служит подключение, группа или проект GitLab либо владелец или репозиторий GitHub; см. «Ограничения интеграций Git».
  • Токены: API означает, что скоуп можно делегировать API-токену или OAuth для Opfield API; MCP — OAuth для ресурса Opfield MCP. — означает, что оба обычных семейства токенов его не принимают. Права пользователя и права токена не взаимозаменяемы.
  • Право не включает недоступную функцию продукта, не отменяет требования лицензии и не выдаёт учётные данные или полномочия у внешнего провайдера.
  • Делегированный доступ ограничен текущими эффективными правами владельца токена. Доступность скоупа для MCP не означает, что для действия существует инструмент.
  • API-токены и OAuth для Opfield API или MCP могут содержать любой скоуп, кроме пользовательских скоупов AI Workspace и песочниц AI (ai:workspace:use, feat:ai:configure, ai:skills:manage и ai:sandbox:*), mcp:use, inference:setup, admin:users:impersonate и integrations:gitlab:sandbox:clone. Сами API-токены и авторизации OAuth создаются только из интерактивного сеанса.
  • inference:setup — специальный скоуп OAuth для настройки Inference, а не обычное право пользователя или группы.

Базовое право proxy:view распространяется на все маршруты. Право proxy:view:<routeId> ограничено одним маршрутом, а proxy:view:folder/<folderId> — маршрутами в выбранной папке и её подпапках. Скоупы маршрутов, Pages, хранилищ, баз данных и Docker, а также все скоупы создания принимают и node/<nodeId> — ресурсы одной ноды.

Формат ограничения зависит от типа ресурса. Для контейнеров Docker <nodeId> выбирает ноду, а <nodeId>/<stableResourceId> — конкретный контейнер или развёртывание. Права Pages ограничиваются идентификатором проекта, включая операции с его развёртываниями, тегами и токенами публикации. Скоупы внутренней PKI ограничиваются идентификатором центра сертификации. Выбирайте нужный объект в редакторе прав, не подставляйте идентификатор ресурса другого типа.

Opfield вычисляет право на папку при каждом запросе: оно охватывает ресурсы, которые сейчас находятся в папке, ресурсы, созданные в ней или перемещённые в неё позже, и не охватывает перемещённые из неё. Для создания ограничение по папке задаёт папку назначения, а не ещё не созданный ресурс. Управление папкой и операции с ресурсами — отдельные права: возможность управлять папкой сама по себе не даёт доступа к её элементам, а для перемещения элемента по-прежнему нужно право изменения или управления этим элементом.

API-токены и разрешения OAuth вычисляются в два шага: сначала раскрываются их собственные ограничения папками и нодами, затем результат ограничивается текущим доступом владельца. Поэтому токен никогда не получает доступ к ресурсу, недоступному владельцу, а право создания при делегировании никогда не считается правом просмотра. Если токен запрашивает общий скоуп, который владелец имеет только для части ресурсов, Opfield сужает токен до этих ресурсов.

Каждый скоуп относится к семейству, названному по самому длинному префиксу, у которого есть скоуп просмотра: proxy:* относится к proxy:view, docker:containers:* — к docker:containers:view, nodes:* — к nodes:details, а docker:tasks:manage — к docker:tasks. Любой скоуп действия подразумевает скоуп просмотра своего семейства с тем же ограничением, включая скоупы удаления. Например, proxy:edit:<routeId> показывает этот маршрут, docker:containers:manage:<nodeId> — все контейнеры на этой ноде, а databases:query:read:<databaseId> показывает эту базу данных в списке, не выдавая общий databases:view.

Скоупы создания не подразумевают никакого просмотра: это все скоупы с частью create, например proxy:create, docker:containers:create или pki:templates:create, а также docker:images:pull, ssl:cert:issue и pki:cert:issue. Это верно при любом ограничении — общем, папкой или нодой: пользователь только с proxy:create:folder/<folderId> может создавать маршруты в этой папке, но не видит уже находящиеся в ней маршруты. Диалоги создания всё равно показывают папки и ноды назначения, которые он может выбрать. Если включён параметр Auto-assign permissions for created resources (по умолчанию включён), создатель сохраняет просмотр каждого созданного им ресурса; см. «Ограничение доступа папкой». Единственное исключение — hosting:snapshots:create:<vmId>, который сохраняет просмотр снимков этой виртуальной машины.

Остальное задают явные правила:

  • Уровни доступа: storage:objects:admin включает write, а тот — read; databases:query:admin включает write, а тот — read; storage:credentials:reveal включает storage:credentials:use.
  • logs:read и logs:tokens:view (а значит, и logs:tokens:delete) подразумевают logs:environments:view; nodes:manage подразумевает nodes:config:view, а тот — nodes:details; inference:models:manage подразумевает inference:providers:view; docker:availability:manage подразумевает docker:containers:view.
  • Скоупы дерева папок (*:folders:manage), nodes:backups:execute, proxy:maintenance:bypass и учётные данные внутреннего реестра docker:registries:internal:pull и :push не открывают просмотр.
  • Скоуп просмотра никогда не подразумевает просмотр другого семейства: proxy:templates:view не выдаёт proxy:view.

У каждого типа ресурсов своё дерево папок. Папка в разделе Routes не охватывает контейнеры, даже если в Docker есть папка с тем же именем.

Ресурсы Ограничение папкой Дерево папок управляется скоупом
Маршруты Да proxy:folders:manage
Домены Да domains:folders:manage
SSL-сертификаты Да ssl:cert:folders:manage
Проекты Pages Да pages:folders:manage
Ноды Да nodes:folders:manage
Контейнеры и развёртывания Docker Да docker:folders:manage
Проекты Compose, сети, тома и образы Docker Да; у каждого типа своё дерево docker:folders:manage
Базы данных: внешние подключения и управляемые базы Да databases:folders:manage
Хранилища: подключения и управляемые хранилища Да storage:folders:manage
Окружения журналирования; схемы журналирования Да logs:environments:folders:manage; logs:schemas:folders:manage
Пользователи; группы прав Да admin:users:folders:manage; admin:groups:folders:manage
Центры сертификации Internal PKI Да; папка содержит иерархии центров сертификации целиком, а право на папку охватывает каждый корневой центр в ней и его промежуточные pki:ca:folders:manage
Сертификаты Internal PKI Да pki:cert:folders:manage
Шаблоны nginx Да proxy:templates:folders:manage
Шаблоны сертификатов Папки только упорядочивают список: скоупы шаблонов сертификатов не ограничиваются ресурсами pki:templates:folders:manage
Резервные копии баз данных Через папку базы данных —
Токены приёма журналов и поиск по журналам Через папку окружения журналирования —
Отказоустойчивость рабочих нагрузок Через папку контейнера или проекта Compose —
Исполнители резервного копирования (nodes:backups:execute) Через папку ноды —
Списки доступа, реестры Docker, задачи Docker, уведомления, страница состояния, SIEM, интеграции, хостинговые аккаунты и виртуальные машины, Inference, диагностика Opfield, автоматическая очистка, лицензия и настройки Нет —

Скоупы без поддержки папок действуют глобально или, если в каталоге указано Ресурс, ограничиваются одним ресурсом. Папки снимков хостинга только упорядочивают снимки и не ограничивают доступ.

Скоупы интеграций Git можно ограничить одним подключением, а для GitLab и GitHub — группами, проектами, владельцами или репозиториями внутри него. Ограничения хранят постоянные идентификаторы провайдера, а не имена или пути, поэтому переименование или перенос группы либо репозитория не меняет выданное право.

Ограничение Что охватывает
<scope>:<connectorId> Все репозитории этого подключения
<scope>:<connectorId>/group/<groupId> GitLab: группу, её подгруппы и все проекты в них. Opfield получает родительские группы проекта из GitLab и кэширует их на несколько минут, поэтому перенесённый проект следует за новой группой
<scope>:<connectorId>/project/<projectId> GitLab: этот проект
<scope>:<connectorId>/owner/<ownerId> GitHub: все репозитории этой организации или пользователя
<scope>:<connectorId>/repo/<repoId> GitHub: этот репозиторий
  • Какие скоупы: view, use, repo:read и repo:write для GitLab и GitHub, а также integrations:gitlab:sandbox:clone принимают все ограничения своего провайдера. Скоупы обычного Git принимают только подключение. integrations:<provider>:manage выдаётся в общем виде или для одного подключения: для управления подключением — его настройками, токенами, списком разрешённых репозиториев, синхронизацией, проверкой и удалением — он нужен на этом подключении, а для создания подключения — в общем виде. Право на группу, владельца, проект или репозиторий никогда не даёт управления подключением.
  • Сопоставление: операцию с репозиторием разрешает общий скоуп, ограничение подключением, любая группа или владелец, содержащие репозиторий, либо сам проект или репозиторий. Подразумеваемый просмотр действует для каждого ограничения отдельно: integrations:gitlab:repo:write:<connectorId>/project/42 также показывает проект 42. Ограничения папками к интеграциям не применяются.
  • Что проверяется: каждая операция с репозиторием проверяет сам репозиторий — файлы, деревья, ветки, коммиты, конвейеры CI, журналы заданий и переменные, вебхуки, токены развёртывания, настройки реестра, клонирование в песочницу и источники сборки Docker и Pages — одинаково в REST API, AI Workspace и MCP.
  • Учётные данные: Opfield использует собственные учётные данные подключения, если integrations:<provider>:use так же охватывает репозиторий, а иначе — личные учётные данные вызывающего. Если нет ни того, ни другого, пользователю AI Workspace предлагается авторизовать личные учётные данные, а остальные получают 403 с указанием integrations:<provider>:use и репозитория.
  • Скрытые проекты: проект GitLab вне прав вызывающего отвечает так же, как несинхронизированный проект (404, без пути). Запись, секреты, клонирование в песочницу и выбор учётных данных читают вложенность групп и владельца репозитория у провайдера заново; чтение может использовать значение из кэша не старше пяти минут, а владелец в GitHub кэшируется по идентификатору репозитория, никогда по пути. События изменения подключений через WebSocket получают только те, кто может видеть это подключение.
  • Списки: список подключений содержит подключения, на которые у вызывающего есть любой скоуп Git; подключение, доступное только через более узкие права, возвращается без списка разрешённых репозиториев. Списки проектов и репозиториев содержат только то, что охватывают права.
  • Источники сборки: для настройки источника сборки Docker или Pages нужен integrations:<provider>:use на репозиторий — с любым охватывающим его ограничением — вместе с собственными правами рабочей нагрузки. repo:read, общий view и личные учётные данные не нужны: сборки используют учётные данные подключения. Выбор источника показывает подключения и репозитории, которые охватывают скоупы Git вызывающего, поскольку use подразумевает view. Ручная сборка заново проверяет use вызывающего на сохранённый репозиторий. Источники, сохранённые до 2.11, продолжают собираться автоматически, как раньше; источник, созданный или сохранённый заново после обновления, собирается по опросу и вебхукам, только пока сохранившая его учётная запись сохраняет use на репозиторий, а иначе записывает отменённую сборку Build paused: <user> no longer has use on <repo>, пока этот доступ не вернётся или источник не сохранит заново тот, у кого есть use.
  • Токены и разрешения OAuth: делегированный скоуп Git ограничивается правами владельца для каждого ограничения отдельно. Более широкий скоуп токена сужается до ограничений владельца, а скоуп токена, ограниченный группой, владельцем, проектом или репозиторием, сохраняется, если у владельца есть тот же скоуп или подразумевающий его на любом уровне того же подключения. Поскольку вложенность определяет провайдер, каждая операция с репозиторием от имени токена или OAuth требует, чтобы репозиторий охватывали и права токена, и текущие права владельца: токен, ограниченный проектом P, работает, пока у владельца есть группа, содержащая P, а токен, ограниченный группой G, владелец которого имеет только проект P, получает доступ лишь к P. Такие узкие скоупы токена никогда не учитываются, когда токен выдаёт права пользователям или группам.

Редактор групп, дополнительные права пользователей, форма API-токена и согласие OAuth и MCP предлагают эти ограничения под каждым подключением, с поиском групп и проектов или владельцев и репозиториев. Поиск использует GET /api/integrations/{provider}/{connectorId}/scope-targets?search=&limit=50, где provider — gitlab или github, а подписи сохранённых ограничений получает через GET /api/integrations/{provider}/{connectorId}/scope-targets/resolve?ids=group/123,project/456. Оба запроса требуют integrations:<provider>:view на подключение или на что-либо внутри него и возвращают только цели, которые вызывающий может видеть и которые входят в список разрешённых репозиториев подключения. У них общий лимит 60 запросов в минуту на учётную запись, после которого они возвращают 429 SCOPE_TARGET_RATE_LIMITED с Retry-After, а один запрос выполняет у провайдера не больше 60 обращений мимо кэша; остальные цели сохраняют исходные идентификаторы. Цель, которой больше нет, помечается missing и показывается как Unavailable; сохранённое ограничение, которое вызывающий не может видеть, сохраняет в качестве подписи исходный идентификатор.

В Opfield 2.11 перечисленные ниже скоупы переименованы, объединены или удалены. Обновление переписало все сохранённые права — группы, дополнительные права пользователей, API-токены и разрешения OAuth — с сохранением ограничений, так что nodes:config:edit:<nodeId> стал nodes:manage:<nodeId>. Чтобы никто не потерял доступ, владельцы pki:ca:create:root также получили pki:ca:edit и pki:ca:export; владельцы integrations:github:view или integrations:git:view получили :repo:read; владельцы integrations:github:manage или integrations:git:manage получили :repo:read и :repo:write; а владельцы общего docker:volumes:create или ограниченного нодой (например, docker:volumes:create:<nodeId>) получили docker:volumes:edit с тем же ограничением; права создания, ограниченные папкой, и права только на удаление его не дали.

В течение двух выпусков Opfield принимает старые имена во входных данных и преобразует их так же: в параметре OAuth scope, при создании и изменении API-токенов, при создании и изменении групп прав, в дополнительных правах пользователей и при изменении авторизаций OAuth. Запрос, все скоупы которого удалены, отклоняется. Новые API-токены и запросы OAuth также получают перечисленные выше добавления, если они есть у запрашивающего, — например, токен с integrations:github:manage получает и repo:read, — а экран согласия показывает их, и их можно снять. Области, требующие ручного подтверждения, например repo:write или pki:ca:export, во входных данных не добавляются. Проверки прав используют только новые имена, поэтому обновите сценарии, клиенты OAuth и описания инфраструктуры как кода до удаления псевдонимов.

Устаревший скоуп Замена
ssl:cert:revoke, ssl:cert:export Удалены: они никогда не проверялись
notifications:view notifications:alerts:view и notifications:webhooks:view
notifications:manage notifications:alerts:manage и notifications:webhooks:manage
notifications:alerts:create, :edit, :delete notifications:alerts:manage
notifications:webhooks:create, :edit, :delete notifications:webhooks:manage
notifications:deliveries:view notifications:webhooks:view
logs:manage Все скоупы logs:*
docker:containers:config Удалён. Дублирование и пересоздание требуют docker:containers:environment и docker:containers:secrets; адрес сервиса ноды Docker — nodes:manage
nodes:config:edit nodes:manage
pki:ca:view:root, pki:ca:view:intermediate pki:ca:view
integrations:gitlab:sync, integrations:github:sync, integrations:git:sync integrations:<provider>:manage
integrations:gitlab:system, integrations:github:system, integrations:git:system integrations:<provider>:use
integrations:gitlab:projects:view integrations:gitlab:view
integrations:gitlab:ci:view, :variables:view integrations:gitlab:repo:read
integrations:gitlab:ci:edit, :variables:edit, :variables:delete, :webhooks:manage, :registry:manage integrations:gitlab:repo:write
proxy:raw:toggle Удалён; для переключения исходного режима нужен proxy:raw:write
proxy:advanced:bypass, proxy:raw:bypass proxy:unrestricted
proxy:templates:create, :edit, :delete proxy:templates:manage
docker:containers:folders:manage docker:folders:manage

Некоторые замены шире прежних скоупов, поэтому проверьте группы, права пользователей, API-токены и OAuth-разрешения, у которых они были: integrations:gitlab:repo:write также делает коммиты в файлы репозитория и меняет конфигурацию CI, переменные, вебхуки и настройки реестра; integrations:gitlab:repo:read также читает файлы репозитория; право manage подключения охватывает его настройки, токены, список разрешённых репозиториев, проверку и удаление; nodes:manage также устанавливает Secure Runtime, меняет служебные адреса и управляет размещёнными виртуальными машинами; proxy:unrestricted снимает оба ограничения — расширенной и исходной конфигурации; а notifications:webhooks:manage также раскрывает адреса и заголовки вебхуков и содержимое доставок. integrations:gitlab:variables:view стал integrations:gitlab:repo:read, который читает ключи переменных, но не их значения. См. Обновление с 2.10.

Другие изменения прав в 2.11:

  • Новые скоупы: pki:ca:edit (адреса центра сертификации, максимальный срок действия и OCSP-ответчик) и pki:ca:export (экспорт закрытого ключа центра сертификации), оба ограничиваются одним центром сертификации; docker:volumes:edit (переименование, метки, увеличение размера и принятие томов под управление); integrations:github:repo:read, :repo:write, integrations:git:repo:read и :repo:write.
  • Git-провайдеры используют одинаковые действия: view показывает подключения, manage настраивает, проверяет и синхронизирует их, use использует собственные учётные данные подключения, а repo:read и repo:write читают или изменяют содержимое репозитория. Каждое из них можно ограничить подключением, а для GitLab и GitHub — группами, проектами, владельцами или репозиториями; см. «Ограничения интеграций Git». Для просмотра и чтения синхронизированных проектов GitLab нужен integrations:gitlab:view. repo:read для GitLab охватывает файлы репозитория, конвейеры CI и журналы заданий, а также ключи переменных CI/CD без значений; для изменения переменных нужен repo:write. Для чтения значений переменных GitHub Actions нужен integrations:github:repo:write. Встроенные группы viewer и operator получают только integrations:gitlab:view.
  • Шаблоны: для изменения содержимого шаблона nginx нужен proxy:templates:manage, а proxy:raw:write больше не требуется. Встроенная группа operator сохраняет только proxy:templates:view, потому что содержимое шаблона — это исходная конфигурация nginx.
  • Права на папки теперь работают для logs:tokens:* (через папку окружения журналирования) и docker:availability:manage (через папку контейнера или проекта Compose). Центры сертификации, сертификаты Internal PKI и шаблоны nginx можно раскладывать по папкам и выдавать на них права по папкам; см. «Поддержка папок по типам ресурсов».
  • Подразумеваемый просмотр: любое право на действие, кроме создания, подразумевает право просмотра своего семейства с тем же ограничением, поэтому разрешение только на удаление теперь также показывает эти ресурсы в списках; см. «Подразумеваемый просмотр».
  • Права для новых функций: diagnostics:view и diagnostics:logs, databases:backups:*, nodes:backups:execute и скоупы storage:*. Встроенные группы их получили, а пользовательские группы прав — нет, поэтому выдайте их там, где нужно.
Скоуп Описание Ограничения Токены
pki:ca:view Просмотр корневых и промежуточных центров сертификации Ресурс, Папка API, MCP
pki:ca:create:root Создание корневых центров сертификации — API, MCP
pki:ca:create:intermediate Создание промежуточных центров сертификации под корневым Ресурс API, MCP
pki:ca:edit Изменение адресов центра сертификации, максимального срока действия и OCSP-ответчика Ресурс, Папка API, MCP
pki:ca:export Экспорт центра сертификации вместе с закрытым ключом Ресурс, Папка API, MCP
pki:ca:folders:manage Управление папками центров сертификации. Перемещаются только корневые центры, а их промежуточные следуют за ними; для перемещения корневого центра нужен также pki:ca:edit на него и на папку назначения — API, MCP
pki:ca:revoke:root Отзыв корневых центров сертификации — API, MCP
pki:ca:revoke:intermediate Отзыв промежуточных центров сертификации — API, MCP
Скоуп Описание Ограничения Токены
pki:cert:view Просмотр выданных сертификатов Ресурс, Папка API, MCP
pki:cert:issue Выпуск сертификатов Ресурс API, MCP
pki:cert:revoke Отзыв выданных сертификатов Ресурс, Папка API, MCP
pki:cert:export Экспорт сертификатов и ключей Ресурс, Папка API, MCP
pki:cert:folders:manage Управление папками сертификатов PKI; для перемещения сертификата нужен также pki:cert:issue на выпустивший его центр сертификации — API, MCP
Скоуп Описание Ограничения Токены
pki:templates:view Просмотр шаблонов сертификатов — API, MCP
pki:templates:create Создание шаблонов сертификатов — API, MCP
pki:templates:edit Изменение шаблонов сертификатов — API, MCP
pki:templates:delete Удаление шаблонов сертификатов — API, MCP
pki:templates:folders:manage Управление папками шаблонов сертификатов; для перемещения пользовательского шаблона нужен также pki:templates:edit, а встроенные шаблоны не перемещаются — API, MCP
Скоуп Описание Ограничения Токены
domains:view Просмотр управляемых доменов Ресурс, Папка API, MCP
domains:create Создание управляемых доменов Ресурс, Папка API, MCP
domains:edit Изменение управляемых доменов Ресурс, Папка API, MCP
domains:delete Удаление управляемых доменов Ресурс, Папка API, MCP
domains:folders:manage Организация доменов по папкам — API, MCP
Скоуп Описание Ограничения Токены
proxy:view Просмотр и поиск входящих маршрутов Ресурс, Папка API, MCP
proxy:create Создание входящих маршрутов Ресурс, Папка API, MCP
proxy:edit Изменение конфигурации входящих маршрутов Ресурс, Папка API, MCP
proxy:delete Удаление входящих маршрутов Ресурс, Папка API, MCP
proxy:raw:read Просмотр исходной конфигурации nginx Ресурс, Папка API, MCP
proxy:raw:write Изменение исходной конфигурации nginx и переключение маршрутов между управляемой и исходной конфигурацией Ресурс, Папка API, MCP
proxy:advanced Использование расширенной конфигурации прокси Ресурс, Папка API, MCP
proxy:unrestricted Сохранение расширенных фрагментов и исходной конфигурации nginx без ограничений на опасные директивы Ресурс, Папка API, MCP
proxy:maintenance:bypass Создание временных кодов доступа к маршрутам в режиме обслуживания Ресурс, Папка API, MCP
proxy:folders:manage Создание, упорядочивание и удаление папок маршрутов — API, MCP
Скоуп Описание Ограничения Токены
pages:view Просмотр проектов Pages, развёртываний, тегов, предпросмотра и использования ресурсов Ресурс, Папка API, MCP
pages:create Создание статических проектов Pages Ресурс, Папка API, MCP
pages:edit Переименование проектов Pages, изменение правил хранения и квот Ресурс, Папка API, MCP
pages:delete Удаление проектов Pages, для которых разрешено удаление Ресурс, Папка API, MCP
pages:deploy Создание и загрузка статических развёртываний Ресурс, Папка API, MCP
pages:deployments:manage Закрепление, открепление, очистка и удаление развёртываний, для которых разрешена операция Ресурс, Папка API, MCP
pages:tags:manage Создание, перемещение и удаление тегов проектов Pages Ресурс, Папка API, MCP
pages:tokens:manage Создание, ограничение и отзыв учётных данных для публикации проекта Ресурс, Папка API, MCP
pages:folders:manage Создание, упорядочивание и удаление папок проектов Pages — API, MCP
pages:settings:view Просмотр профиля подстановочного домена и настроек хранилища по умолчанию — API, MCP
pages:settings:edit Настройка и миграция профиля подстановочного домена Pages и настроек хранилища — API, MCP
Скоуп Описание Ограничения Токены
proxy:templates:view Просмотр шаблонов nginx Ресурс, Папка API, MCP
proxy:templates:manage Создание, изменение и удаление шаблонов nginx, включая их содержимое; с ограничением папкой — также создание шаблонов в этой папке Ресурс, Папка API, MCP
proxy:templates:folders:manage Управление папками шаблонов nginx; для перемещения пользовательского шаблона нужен также proxy:templates:manage на него и на папку назначения, а встроенные шаблоны не перемещаются — API, MCP
Скоуп Описание Ограничения Токены
ssl:cert:view Просмотр SSL-сертификатов Ресурс, Папка API, MCP
ssl:cert:issue Выпуск сертификатов через ACME или загрузка SSL-сертификатов Ресурс, Папка API, MCP
ssl:cert:folders:manage Организация SSL-сертификатов по папкам — API, MCP
ssl:cert:delete Удаление SSL-сертификатов Ресурс, Папка API, MCP
Скоуп Описание Ограничения Токены
acl:view Просмотр списков контроля доступа Ресурс API, MCP
acl:create Создание списков контроля доступа — API, MCP
acl:edit Изменение списков контроля доступа Ресурс API, MCP
acl:delete Удаление списков контроля доступа Ресурс API, MCP
Скоуп Описание Ограничения Токены
nodes:details Просмотр управляемых нод Ресурс, Папка API, MCP
nodes:create Регистрация новых нод Ресурс, Папка API, MCP
nodes:rename Переименование нод Ресурс, Папка API, MCP
nodes:delete Удаление нод из Opfield Ресурс, Папка API, MCP
nodes:config:view Просмотр конфигурации nginx на ноде Ресурс, Папка API, MCP
nodes:manage Изменение конфигурации nginx на ноде, установка защищённой среды выполнения Docker, смена адресов сервисов и управление виртуальными машинами хостинга Ресурс, Папка API, MCP
nodes:logs Просмотр журналов демона и nginx на ноде Ресурс, Папка API, MCP
nodes:console Открытие интерактивной оболочки на ноде Ресурс, Папка API, MCP
nodes:files:read Просмотр, открытие, копирование и скачивание файлов ноды Ресурс, Папка API, MCP
nodes:files:write Создание, изменение, загрузка, перемещение и удаление файлов ноды Ресурс, Папка API, MCP
nodes:lock Запрет новых прокси-хостов или контейнеров на выбранных нодах Ресурс, Папка API, MCP
nodes:folders:manage Создание, упорядочивание и удаление папок нод — API, MCP
Скоуп Описание Ограничения Токены
admin:users Создание, изменение и удаление пользователей Ресурс, Папка API, MCP
admin:users:impersonate Временное выполнение действий от имени другого активного пользователя Ресурс, Папка —
admin:users:folders:manage Создание, упорядочивание и удаление папок пользователей — API, MCP
admin:groups Создание, изменение и удаление групп прав Ресурс, Папка API, MCP
admin:groups:folders:manage Создание, упорядочивание и удаление папок групп прав — API, MCP
admin:audit Просмотр журнала аудита — API, MCP
audit:siem:view Просмотр получателей SIEM и истории доставки аудита — API, MCP
audit:siem:manage Настройка получателей SIEM и управление доставкой аудита — API, MCP
admin:system Защищённые полномочия системного администратора — API, MCP
admin:details:certificates Просмотр внутренних системных сертификатов PKI и SSL без изменения — API, MCP
admin:update Проверка и установка обновлений — API, MCP
admin:alerts Просмотр предупреждений и управление ими — API, MCP
diagnostics:view Чтение состояния самого Opfield и его поминутной истории за 48 часов: процессор, память и диск хоста, процесс бэкенда, его PostgreSQL и Redis, контейнеры стека, фоновые задачи и задержка API. Есть у встроенных административных групп — API, MCP
diagnostics:logs Чтение журналов собственных контейнеров Opfield (app, PostgreSQL, Redis, Relay, реестр) и последнего запуска обновления; включает diagnostics:view. Есть у встроенных административных групп — API, MCP
Скоуп Описание Ограничения Токены
settings:gateway:view Просмотр настроек создания учётных записей при входе и внешнего контура управления — API, MCP
settings:gateway:edit Изменение настроек создания учётных записей при входе и внешнего контура управления — API, MCP
Скоуп Описание Ограничения Токены
integrations:gitlab:view Просмотр подключений GitLab, состояния синхронизации и синхронизированных проектов Ресурс API, MCP
integrations:gitlab:manage Создание, изменение, ротация учётных данных, синхронизация и удаление подключений GitLab Ресурс API, MCP
integrations:gitlab:use Использование учётных данных подключения для отдельно разрешённых операций GitLab и настройка источников сборки Docker и Pages из проекта Ресурс API, MCP
integrations:gitlab:repo:read Чтение файлов репозитория, конвейеров CI и журналов заданий, а также ключей переменных CI/CD (без значений) через подключение GitLab Ресурс API, MCP
integrations:gitlab:repo:write Изменение файлов репозитория, конфигурации CI, переменных CI/CD, вебхуков и записей реестра через подключение GitLab Ресурс API, MCP
integrations:gitlab:sandbox:clone Клонирование разрешённых репозиториев GitLab в ИИ-песочницы Ресурс —
Скоуп Описание Ограничения Токены
integrations:github:view Просмотр подключений GitHub с токенами Ресурс API, MCP
integrations:github:manage Создание, изменение, ротация токенов, синхронизация и удаление подключений GitHub Ресурс API, MCP
integrations:github:use Использование учётных данных подключения вместо личной авторизации GitHub и настройка источников сборки Docker и Pages из репозитория Ресурс API, MCP
integrations:github:repo:read Просмотр репозиториев и чтение файлов через подключение GitHub (без значений переменных Actions) Ресурс API, MCP
integrations:github:repo:write Изменение файлов и секретов репозитория, чтение и изменение переменных Actions через подключение GitHub Ресурс API, MCP
Скоуп Описание Ограничения Токены
integrations:git:view Просмотр подключений Git Ресурс API, MCP
integrations:git:manage Создание, изменение, ротация учётных данных, синхронизация и удаление подключений Git Ресурс API, MCP
integrations:git:use Использование учётных данных подключения вместо личной авторизации Git и настройка источников сборки Docker и Pages из репозитория Ресурс API, MCP
integrations:git:repo:read Просмотр репозиториев и чтение файлов через подключение Git Ресурс API, MCP
integrations:git:repo:write Изменение файлов репозитория через подключение Git Ресурс API, MCP
Скоуп Описание Ограничения Токены
integrations:ssh:view Просмотр настроенных внешних SSH-серверов — API, MCP
integrations:ssh:manage Добавление и настройка внешних SSH-серверов и промежуточных хостов — API, MCP
integrations:ssh:use Выполнение разрешённых команд на настроенных внешних SSH-серверах — API, MCP
Скоуп Описание Ограничения Токены
integrations:cloudflare:view Просмотр подключений Cloudflare и состояния синхронизации — API, MCP
integrations:cloudflare:sync Обновление зон Cloudflare и возможностей токена с учётными данными подключения — API, MCP
integrations:cloudflare:manage Создание, изменение, проверка, синхронизация, ротация учётных данных и удаление подключений Cloudflare — API, MCP
Скоуп Описание Ограничения Токены
integrations:hosting:view Просмотр аккаунтов хостинга и состояния подключения Ресурс API, MCP
integrations:hosting:manage Подключение, настройка и синхронизация аккаунтов хостинга Ресурс API, MCP
hosting:resources:view Просмотр ресурсов провайдера и связанных нод Opfield Ресурс API, MCP
hosting:resources:create Заказ ВМ у провайдера и установка ролей Opfield; возможны расходы Ресурс API, MCP
hosting:resources:power Запуск, выключение и перезагрузка ВМ; затрагивает все роли на ВМ Ресурс API, MCP
hosting:resources:resize Изменение ресурсов ВМ; может повлиять на стоимость Ресурс API, MCP
hosting:snapshots:view Просмотр снапшотов провайдера и их папок без изменения ВМ Ресурс API, MCP
hosting:snapshots:create Создание снапшотов провайдера; хранение может быть платным Ресурс API, MCP
hosting:snapshots:delete Безвозвратное удаление снапшотов провайдера Ресурс API, MCP
hosting:snapshots:restore Замена текущих данных ВМ данными из снапшота Ресурс API, MCP
hosting:snapshots:folders:manage Создание папок снапшотов и перемещение снапшотов между папками Ресурс API, MCP
hosting:resources:delete Уничтожение данных ВМ у провайдера или отмена аренды HOSTKEY Ресурс API, MCP
hosting:resources:recover Перезапуск демонов Opfield или явный повтор неудавшейся установки Ресурс API, MCP
hosting:billing:view Просмотр баланса аккаунта, начислений, счетов и транзакций Ресурс API, MCP
hosting:billing:topup Создание счетов на пополнение HOSTKEY; оплата остаётся на стороне провайдера Ресурс API, MCP
Скоуп Описание Ограничения Токены
housekeeping:view Просмотр настроек, статистики и истории автоматической очистки — API, MCP
housekeeping:run Ручной запуск задач очистки — API, MCP
housekeeping:configure Изменение настроек и расписания очистки — API, MCP
Скоуп Описание Ограничения Токены
license:view Просмотр состояния лицензии Opfield и доступных по ней возможностей — API, MCP
license:manage Активация, обновление или удаление лицензии Opfield — API, MCP
Скоуп Описание Ограничения Токены
ai:workspace:use Использование рабочего пространства ИИ и встроенного ассистента — —
feat:ai:use Использование Opfield Inference и просмотр личной статистики запросов — API, MCP
feat:ai:configure Настройка ИИ и провайдеров — —
ai:skills:manage Создание, изменение, включение, отключение и удаление навыков рабочего пространства ИИ — —
ai:sandbox:use Запуск задач ИИ в песочнице с ограниченными ресурсами — —
ai:sandbox:tier:medium Запуск задач ИИ в песочнице со средними лимитами ресурсов — —
ai:sandbox:tier:high Запуск задач ИИ в песочнице с высокими лимитами ресурсов — —
ai:sandbox:manage Просмотр и принудительное завершение задач ИИ в песочнице — —
mcp:use Разрешение пользователю доступа к удалённому серверу MCP через OAuth — —
Скоуп Описание Ограничения Токены
inference:setup Служебная авторизация OAuth для настройки Inference через CLI; не назначается пользователям или пользовательским группам — —
inference:providers:view Просмотр провайдеров Inference, подключений, обнаруженных возможностей и квот — API, MCP
inference:providers:manage Подключение, обновление, синхронизация, настройка маршрутизации и отключение провайдеров Inference — API, MCP
inference:models:manage Создание, публикация, замена и удаление моделей Inference — API, MCP
inference:limits:manage Настройка бюджетов Inference по умолчанию и для отдельных пользователей — API, MCP
inference:usage:view Просмотр общей и пользовательской статистики Inference — API, MCP
Скоуп Описание Ограничения Токены
docker:containers:view Просмотр контейнеров Docker Ресурс, Папка API, MCP
docker:containers:create Создание и дублирование контейнеров Ресурс, Папка API, MCP
docker:containers:edit Изменение настроек и конфигурации контейнеров Ресурс, Папка API, MCP
docker:containers:manage Запуск, остановка, перезапуск, принудительная остановка и пересоздание контейнеров Ресурс, Папка API, MCP
docker:containers:environment Изменение переменных окружения контейнеров Ресурс, Папка API, MCP
docker:containers:link Доступ других рабочих нагрузок к одному порту контейнера или развёртывания через связь контейнеров Ресурс, Папка API, MCP
docker:containers:delete Удаление контейнеров Ресурс, Папка API, MCP
docker:containers:console Открытие интерактивной консоли контейнеров Ресурс, Папка API, MCP
docker:containers:files:read Просмотр и чтение файлов контейнеров Ресурс, Папка API, MCP
docker:containers:files:write Создание, изменение, перемещение и удаление файлов контейнеров Ресурс, Папка API, MCP
docker:containers:export Экспорт переносимых архивов контейнеров Ресурс, Папка API, MCP
docker:containers:secrets Просмотр зашифрованных секретов и управление ими Ресурс, Папка API, MCP
docker:containers:webhooks Просмотр вебхуков обновления контейнера и управление ими Ресурс, Папка API, MCP
docker:containers:mounts Добавление, удаление и изменение подключённых томов контейнеров и развёртываний Ресурс, Папка API, MCP
docker:containers:migrate Перенос контейнеров и развёртываний между нодами Docker Ресурс, Папка API, MCP
docker:availability:manage Включение, масштабирование, восстановление и отключение отказоустойчивости между нодами Ресурс, Папка API, MCP
docker:folders:manage Упорядочивание контейнеров, развёртываний, проектов Compose, сетей, томов и образов по папкам — API, MCP

Журналы, статистика, процессы и просмотр параметров контейнера входят в docker:containers:view; отдельной области для журналов нет. Для дублирования контейнера и его пересоздания с изменёнными настройками, помимо права создания или управления, нужны docker:containers:environment и docker:containers:secrets. Загрузку образа при создании контейнера или развёртывания покрывает docker:containers:create в месте назначения; docker:images:pull нужен только для отдельной загрузки образов. Привязка базы данных или хранилища к развёртыванию также требует docker:containers:manage для него, потому что любое изменение привязки выкатывает его заново, а при изменении его переменных среды — ещё и docker:containers:edit. docker:containers:manage разрешает сразу запуск, остановку, перезапуск, принудительное завершение и пересоздание; области только для перезапуска нет. Эти области действуют и для автономных контейнеров, которые Opfield обнаружил, но не создавал. См. Операции без принятия под управление.

Скоуп Описание Ограничения Токены
docker:compose:view Просмотр проектов Compose, сервисов, мониторинга, журналов, ревизий и активности Ресурс, Папка API, MCP
docker:compose:create Проверка и развёртывание управляемых проектов Compose; принятие под управление также требует права управления проектами Ресурс, Папка API, MCP
docker:compose:manage Принятие проектов под управление, управление жизненным циклом, ревизиями, секретами и привязками Ресурс, Папка API, MCP
docker:compose:delete Удаление проектов Compose, остановка с удалением ресурсов и удаление томов Ресурс, Папка API, MCP

Внешние проекты Compose доступны только для чтения: docker:compose:view покрывает их инвентарь, мониторинг и объединённые журналы, а действия жизненного цикла становятся доступны только после принятия под управление. Отдельные контейнеры любого проекта Compose нельзя запускать, останавливать, перезапускать, изменять или удалять через области прав контейнеров.

Скоуп Описание Ограничения Токены
docker:images:view Просмотр образов Docker Ресурс, Папка API, MCP
docker:images:pull Загрузка образов Docker из реестра Ресурс, Папка API, MCP
docker:images:delete Удаление образов Docker и очистка неиспользуемых образов Ресурс, Папка API, MCP
Скоуп Описание Ограничения Токены
docker:volumes:view Просмотр томов Docker Ресурс, Папка API, MCP
docker:volumes:create Создание томов Docker Ресурс, Папка API, MCP
docker:volumes:edit Переименование, изменение меток, увеличение размера и принятие томов Docker под управление Ресурс, Папка API, MCP
docker:volumes:delete Удаление томов Docker Ресурс, Папка API, MCP
docker:volumes:export Экспорт переносимых архивов томов Docker Ресурс, Папка API, MCP
docker:volumes:files:read Просмотр, открытие и скачивание файлов томов Docker Ресурс, Папка API, MCP
docker:volumes:files:write Создание, изменение, загрузка, перемещение и удаление файлов томов Docker Ресурс, Папка API, MCP
Скоуп Описание Ограничения Токены
docker:networks:view Просмотр сетей Docker Ресурс, Папка API, MCP
docker:networks:create Создание сетей Docker Ресурс, Папка API, MCP
docker:networks:edit Подключение контейнеров к сети и отключение от неё Ресурс, Папка API, MCP
docker:networks:delete Удаление сетей Docker Ресурс, Папка API, MCP
Скоуп Описание Ограничения Токены
docker:registries:view Просмотр реестров Docker — API, MCP
docker:registries:create Добавление реестров Docker — API, MCP
docker:registries:edit Изменение настроек реестров Docker — API, MCP
docker:registries:delete Удаление реестров Docker — API, MCP
docker:registries:internal:pull Скачивание из всех или выбранных репозиториев внутреннего реестра Ресурс API, MCP
docker:registries:internal:push Отправка образов во все или выбранные репозитории внутреннего реестра Ресурс API, MCP
Скоуп Описание Ограничения Токены
docker:tasks Просмотр хода выполнения задач Docker Ресурс API, MCP
docker:tasks:manage Принудительная отмена активных задач Docker Ресурс API, MCP
Скоуп Описание Ограничения Токены
databases:view Просмотр сохранённых подключений к базам данных Ресурс, Папка API, MCP
databases:create Создание сохранённых подключений к базам данных Ресурс, Папка API, MCP
databases:edit Изменение сохранённых подключений к базам данных Ресурс, Папка API, MCP
databases:delete Удаление сохранённых подключений к базам данных Ресурс, Папка API, MCP
databases:query:read Просмотр таблиц, ключей и выполнение запросов только на чтение Ресурс, Папка API, MCP
databases:query:write Вставка, изменение, удаление данных и выполнение запросов на запись Ресурс, Папка API, MCP
databases:query:admin Выполнение административных команд и DDL Ресурс, Папка API, MCP
databases:credentials:reveal Раскрытие сохранённых учётных данных и строк подключения к базам данных Ресурс, Папка API, MCP
databases:folders:manage Создание, упорядочивание и удаление папок баз данных — API, MCP
Скоуп Описание Ограничения Токены
databases:backups:view Просмотр политик резервного копирования баз данных и истории запусков Ресурс, Папка API, MCP
databases:backups:manage Создание, изменение и удаление политик резервного копирования и удаление истории запусков Ресурс, Папка API, MCP
databases:backups:run Запуск и отмена резервного копирования Ресурс, Папка API, MCP
databases:backups:restore Восстановление резервной копии в новую или пустую целевую базу данных Ресурс, Папка API, MCP
nodes:backups:execute Использование ноды хранилища как исполнителя заданий резервного копирования и восстановления Ресурс, Папка API, MCP
Скоуп Описание Ограничения Токены
storage:view Просмотр подключений к хранилищам, управляемых хранилищ и их состояния Ресурс, Папка API, MCP
storage:create Создание подключений к хранилищам и управляемых хранилищ Ресурс, Папка API, MCP
storage:edit Изменение подключений к хранилищам и управляемых хранилищ, перезапуск и повтор создания Ресурс, Папка API, MCP
storage:delete Удаление подключений к хранилищам и управляемых хранилищ Ресурс, Папка API, MCP
storage:credentials:reveal Раскрытие сохранённых учётных данных хранилищ Ресурс, Папка API, MCP
storage:credentials:use Использование сохранённых учётных данных хранилища для резервного копирования и заданий копирования без их раскрытия Ресурс, Папка API, MCP
storage:iam Создание, отзыв, импорт и заморозка ключей доступа управляемого хранилища, создание и перенос привязок рабочих нагрузок Ресурс, Папка API, MCP
storage:objects:read Просмотр бакетов и объектов, чтение метаданных, загрузка объектов и создание ссылок на загрузку Ресурс, Папка API, MCP
storage:objects:write Отправка объектов, создание префиксов и удаление объектов Ресурс, Папка API, MCP
storage:objects:admin Создание и удаление бакетов Ресурс, Папка API, MCP
storage:folders:manage Создание, упорядочивание и удаление папок хранилищ — API, MCP
Скоуп Описание Ограничения Токены
notifications:alerts:view Просмотр правил уведомлений — API, MCP
notifications:alerts:manage Создание, изменение и удаление правил уведомлений — API, MCP
notifications:webhooks:view Просмотр вебхуков уведомлений и попыток доставки — API, MCP
notifications:webhooks:manage Создание, изменение, проверка и удаление вебхуков уведомлений — API, MCP
Скоуп Описание Ограничения Токены
logs:environments:view Просмотр окружений внешнего журналирования Ресурс, Папка API, MCP
logs:environments:create Создание окружений журналирования Ресурс, Папка API, MCP
logs:environments:edit Изменение окружений и схем журналирования Ресурс, Папка API, MCP
logs:environments:delete Удаление окружений журналирования Ресурс, Папка API, MCP
logs:environments:folders:manage Создание, упорядочивание и удаление папок окружений журналирования — API, MCP
logs:tokens:view Просмотр токенов приёма журналов Ресурс, Папка API, MCP
logs:tokens:create Создание токенов приёма журналов Ресурс, Папка API, MCP
logs:tokens:delete Отзыв токенов приёма журналов Ресурс, Папка API, MCP
logs:schemas:view Просмотр переиспользуемых схем журналирования Ресурс, Папка API, MCP
logs:schemas:create Создание переиспользуемых схем журналирования Ресурс, Папка API, MCP
logs:schemas:edit Изменение переиспользуемых схем журналирования Ресурс, Папка API, MCP
logs:schemas:delete Удаление переиспользуемых схем журналирования Ресурс, Папка API, MCP
logs:schemas:folders:manage Создание, упорядочивание и удаление папок схем журналирования — API, MCP
logs:read Поиск и просмотр внешних журналов Ресурс, Папка API, MCP

Скоупы токенов журналирования и поиска по журналам ограничиваются идентификатором окружения журналирования; права на папки для них вычисляются через папки окружений журналирования.

Скоуп Описание Ограничения Токены
status-page:view Просмотр настроек страницы состояния, опубликованных сервисов, инцидентов и предпросмотра — API, MCP
status-page:manage Изменение настроек страницы состояния и опубликованных сервисов — API, MCP
status-page:incidents:create Создание ручных инцидентов и перевод автоматических инцидентов в ручные — API, MCP
status-page:incidents:update Изменение сведений об инциденте и публикация обновлений его хронологии — API, MCP
status-page:incidents:resolve Завершение активных инцидентов страницы состояния — API, MCP
status-page:incidents:delete Удаление завершённых инцидентов страницы состояния — API, MCP