Управление доступом в Container Registry
В этом разделе вы узнаете:
- На какие ресурсы можно назначить роль.
- Какие роли действуют в сервисе.
- Какие роли необходимы для того или иного действия.
Об управлении доступом
Все операции в Yandex Cloud проверяются в сервисе Yandex Identity and Access Management. Если у субъекта нет необходимых разрешений, сервис вернет ошибку.
Чтобы выдать разрешения к ресурсу, назначьте роли на этот ресурс субъекту, который будет выполнять операции. Роли можно назначить аккаунту на Яндексе, сервисному аккаунту, федеративным пользователям, группе пользователей, системной группе или публичной группе. Подробнее читайте в разделе Как устроено управление доступом в Yandex Cloud.
Назначать роли на ресурс могут пользователи, у которых на этот ресурс есть роль container-registry.admin
или одна из следующих ролей:
admin
;resource-manager.admin
;organization-manager.admin
;resource-manager.clouds.owner
;organization-manager.organizations.owner
.
На какие ресурсы можно назначить роль
Роль можно назначить на организацию, облако и каталог. Роли, назначенные на организацию, облако или каталог, действуют и на вложенные ресурсы.
Вы также можете назначать роли на отдельные ресурсы сервиса:
Через консоль управления
Через Yandex Cloud CLI вы можете назначить роли на следующие ресурсы:
Через Terraform
Через API Yandex Cloud вы можете назначить роли на следующие ресурсы:
Какие роли действуют в сервисе
На диаграмме показано, какие роли есть в сервисе и как они наследуют разрешения друг друга. Например, в editor
входят все разрешения viewer
. После диаграммы дано описание каждой роли.
Сервисные роли
container-registry.viewer
Роль container-registry.viewer
позволяет просматривать информацию о реестрах, Docker-образах и репозиториях, а также об облаке, каталоге и квотах сервиса.
Пользователи с этой ролью могут:
- просматривать список реестров и информацию о них и о назначенных правах доступа к ним, а также о настройках политик доступа для IP-адресов и настройках сканера уязвимостей;
- просматривать информацию о репозиториях и назначенных правах доступа к ним;
- просматривать список политик автоматического удаления Docker-образов и информацию о таких политиках;
- просматривать список результатов тестирования политик автоматического удаления Docker-образов и информацию о таких результатах;
- просматривать список Docker-образов в реестре и информацию о них, а также скачивать Docker-образы из реестра;
- просматривать историю сканирования Docker-образов на уязвимости и информацию о результатах такого сканирования;
- просматривать информацию о квотах сервиса Container Registry;
- просматривать информацию об облаке и каталоге.
container-registry.editor
Роль container-registry.editor
позволяет управлять реестрами, Docker-образами, репозиториями и их настройками.
Пользователи с этой ролью могут:
- просматривать список реестров и информацию о них, а также создавать, изменять и удалять реестры;
- просматривать информацию о назначенных правах доступа к реестрам, а также о настройках политик доступа для IP-адресов;
- просматривать информацию о настройках сканера уязвимостей, а также создавать, изменять и удалять правила сканирования;
- просматривать список Docker-образов в реестре и информацию о них, а также создавать, скачивать, изменять и удалять Docker-образы;
- запускать и отменять сканирование Docker-образов на уязвимости, а также просматривать историю сканирования и информацию о его результатах;
- просматривать информацию о репозиториях и назначенных правах доступа к ним, а также создавать и удалять репозитории;
- просматривать список политик автоматического удаления Docker-образов и информацию о таких политиках, а также создавать, изменять и удалять такие политики;
- запускать тестирование политик автоматического удаления Docker-образов, просматривать список результатов тестирования и информацию о таких результатах;
- просматривать информацию о квотах сервиса Container Registry;
- просматривать информацию об облаке и каталоге.
Включает разрешения, предоставляемые ролью container-registry.viewer
.
container-registry.admin
Роль container-registry.admin
позволяет управлять доступом к реестрам и репозиториям, а также управлять реестрами, Docker-образами, репозиториями и их настройками.
Пользователи с этой ролью могут:
- просматривать список реестров и информацию о них, а также создавать, изменять и удалять реестры;
- просматривать информацию о назначенных правах доступа к реестрам и изменять такие права доступа;
- просматривать информацию о настройках политик доступа для IP-адресов и изменять такие настройки;
- просматривать информацию о настройках сканера уязвимостей, а также создавать, изменять и удалять правила сканирования;
- просматривать список Docker-образов в реестре и информацию о них, а также создавать, скачивать, изменять и удалять Docker-образы;
- запускать и отменять сканирование Docker-образов на уязвимости, а также просматривать историю сканирования и информацию о его результатах;
- просматривать информацию о репозиториях, а также создавать и удалять репозитории;
- просматривать информацию о назначенных правах доступа к репозиториям и изменять такие права доступа;
- просматривать список политик автоматического удаления Docker-образов и информацию о таких политиках, а также создавать, изменять и удалять такие политики;
- запускать тестирование политик автоматического удаления Docker-образов, просматривать список результатов тестирования и информацию о таких результатах;
- просматривать информацию о квотах сервиса Container Registry;
- просматривать информацию об облаке и каталоге.
Включает разрешения, предоставляемые ролью container-registry.editor
.
container-registry.images.pusher
Роль container-registry.images.pusher
позволяет управлять Docker-образами и репозиториями, а также просматривать информацию о Docker-образах, репозиториях и реестрах.
Пользователи с этой ролью могут:
- просматривать список реестров и информацию о них;
- просматривать список Docker-образов в реестре и информацию о них, а также загружать, скачивать, обновлять, и удалять Docker-образы;
- создавать и удалять репозитории.
container-registry.images.puller
Роль container-registry.images.puller
позволяет скачивать Docker-образы из реестра и просматривать список реестров и Docker-образов, а также информацию о них.
container-registry.images.scanner
Роль container-registry.images.scanner
позволяет сканировать Docker-образы на наличие уязвимостей, а также просматривать информацию о реестрах, Docker-образах и репозиториях, а также об облаке, каталоге и квотах сервиса.
Пользователи с этой ролью могут:
- просматривать список Docker-образов в реестре и информацию о них, а также скачивать Docker-образы из реестра;
- запускать и отменять сканирование Docker-образов на уязвимости, а также просматривать историю сканирования и информацию о его результатах;
- просматривать список реестров и информацию о них и о назначенных правах доступа к ним, а также о настройках политик доступа для IP-адресов и настройках сканера уязвимостей;
- просматривать информацию о репозиториях и назначенных правах доступа к ним;
- просматривать список политик автоматического удаления Docker-образов и информацию о таких политиках;
- просматривать список результатов тестирования политик автоматического удаления Docker-образов и информацию о таких результатах;
- просматривать информацию о квотах сервиса Container Registry;
- просматривать информацию об облаке и каталоге.
Включает разрешения, предоставляемые ролью container-registry.viewer
.
Более подробную информацию о сервисных ролях читайте на странице Роли в документации сервиса Yandex Identity and Access Management.
Примитивные роли
Примитивные роли позволяют пользователям совершать действия во всех сервисах Yandex Cloud.
auditor
Роль auditor
предоставляет разрешения на чтение конфигурации и метаданных любых ресурсов Yandex Cloud без возможности доступа к данным.
Например, пользователи с этой ролью могут:
- просматривать информацию о ресурсе;
- просматривать метаданные ресурса;
- просматривать список операций с ресурсом.
Роль auditor
— наиболее безопасная роль, исключающая доступ к данным сервисов. Роль подходит для пользователей, которым необходим минимальный уровень доступа к ресурсам Yandex Cloud.
viewer
Роль viewer
предоставляет разрешения на чтение информации о любых ресурсах Yandex Cloud.
Включает разрешения, предоставляемые ролью auditor
.
В отличие от роли auditor
, роль viewer
предоставляет доступ к данным сервисов в режиме чтения.
editor
Роль editor
предоставляет разрешения на управление любыми ресурсами Yandex Cloud, кроме назначения ролей другим пользователям, передачи прав владения организацией и ее удаления, а также удаления ключей шифрования Key Management Service.
Например, пользователи с этой ролью могут создавать, изменять и удалять ресурсы.
Включает разрешения, предоставляемые ролью viewer
.
admin
Роль admin
позволяет назначать любые роли, кроме resource-manager.clouds.owner
и organization-manager.organizations.owner
, а также предоставляет разрешения на управление любыми ресурсами Yandex Cloud, кроме передачи прав владения организацией и ее удаления.
Прежде чем назначить роль admin
на организацию, облако или платежный аккаунт, ознакомьтесь с информацией о защите привилегированных аккаунтов.
Включает разрешения, предоставляемые ролью editor
.
Вместо примитивных ролей мы рекомендуем использовать роли сервисов. Такой подход позволит более гранулярно управлять доступом и обеспечить соблюдение принципа минимальных привилегий.
Подробнее о примитивных ролях см. в справочнике ролей Yandex Cloud.
Какие роли мне необходимы
В таблице ниже перечислено, какие роли нужны для выполнения указанного действия. Вы всегда можете назначить роль, которая дает более широкие разрешения, нежели указанная. Например, назначить editor
вместо viewer
.
Действие | Методы | Необходимые роли |
---|---|---|
Просмотр информации | ||
Получение списка реестров. | list |
container-registry.viewer на каталог. |
Получение информации о реестрах, Docker-образах и репозиториях. | get , list |
container-registry.viewer на реестр с указанным ресурсом. |
Скачивание Docker-образа. | pull |
container-registry.images.puller на указанный реестр или репозиторий. |
Получение информации о политиках удаления и результатах их тестовых запусков. | get , list , getDryRunResult , listDryRunResults |
container-registry.viewer на реестр или репозиторий, для которого создана политика удаления. |
Управление ресурсами | ||
Создание реестров в каталоге. | create |
container-registry.editor на каталог. |
Изменение и удаление реестров. | update , delete |
container-registry.editor на указанный реестр. |
Создание Docker-образов с использованием базовых Docker-образов из реестра. | — | container-registry.images.puller на указанный реестр или репозиторий. |
Создание Docker-образов без использования базовых Docker-образов из реестра. | — | Не требует ролей. |
Загрузка Docker-образов в реестр. | push |
container-registry.images.pusher на указанный реестр или репозиторий. |
Удаление Docker-образов. | delete |
container-registry.images.pusher на реестр или репозиторий с Docker-образом. |
Создание, изменение, удаление и тестовый запуск политики удаления. | create , update , delete , dryRun |
container-registry.editor на реестр или репозиторий, для которого создана политика удаления. |
Управление доступом к ресурсам | ||
Назначение роли, отзыв роли и просмотр назначенных ролей на каталог, облако или реестр. | setAccessBindings , updateAccessBindings , listAccessBindings |
admin на этот ресурс. |
Сканирование на наличие уязвимостей | ||
Запуск сканирования Docker-образа. | scan |
container-registry.images.scanner на реестр или репозиторий с Docker-образом. |
Получение результатов сканирования Docker-образа. | get , getLast , list , listVulnerabilities |
container-registry.images.scanner на реестр или репозиторий с Docker-образом. |