Управление группами пользователей
Для организаций, в которых много участников, одинаковые права доступа к ресурсам Yandex Cloud могут потребоваться сразу нескольким пользователям. В этом случае роли и доступы удобнее выдавать не персонально, а для группы.
Вы можете группировать пользователей по любому признаку: например, в соответствии с их должностными обязанностями или отделом.
Примечание
Группы поддерживают только одноуровневую структуру.
Для групп установлены ограничения по умолчанию:
- количество групп в организации — 100;
- количество членов в группе — 1000;
- количество групп, в которых может состоять пользователь — 1000.
Для увеличения квот обратитесь в техническую поддержку.
Создать группу
-
Войдите в аккаунт администратора организации.
-
Перейдите в сервис Yandex Cloud Organization.
-
На левой панели выберите раздел Группы
. -
В правом верхнем углу страницы нажмите Создать группу и введите название и описание группы.
Добавить участников
-
Перейдите в сервис Yandex Cloud Organization.
-
На левой панели выберите раздел Группы
и нажмите строку с названием группы. -
Перейдите на вкладку Участники.
-
Нажмите Добавить участника.
-
В окне Добавление участников выберите пользователей из списка или воспользуйтесь поиском по пользователям.
-
Нажмите Сохранить.
Примечание
В группу нельзя добавить сервисные аккаунты.
Редактировать группу
Чтобы изменить название или описание группы:
-
Войдите в аккаунт администратора организации.
-
Перейдите в сервис Yandex Cloud Organization.
-
На левой панели выберите раздел Группы
. -
Выберите группу в списке и нажмите значок
-
Нажмите Изменить и введите новое название или описание группы.
-
Нажмите Сохранить.
Настроить доступ к управлению группой
Измените права субъекта на доступ к группе как к ресурсу.
Назначить роль
Вы можете назначить роль на группу как на ресурс. Роль можно выдать пользователям и группам из вашей организации.
Например, разрешите пользователю просматривать информацию о группе и управлять составом участников:
-
Войдите в аккаунт администратора организации.
-
Перейдите в сервис Yandex Cloud Organization.
-
На левой панели выберите раздел Группы
и нажмите строку с названием группы. -
Перейдите на вкладку Права доступа к группе.
-
Нажмите Назначить роли.
-
Нажмите Выбрать пользователя.
-
Выберите пользователя или группу из списка или воспользуйтесь поиском.
-
Нажмите Добавить роль и выберите
organization-manager.groups.memberAdmin
. -
Нажмите Сохранить.
Пользователь отобразится в списке прав доступа к группе.
Отозвать роль
Чтобы отозвать у пользователя роль на группу:
-
Войдите в аккаунт администратора организации.
-
Перейдите в сервис Yandex Cloud Organization.
-
На левой панели выберите раздел Группы
и нажмите строку с названием группы. -
Перейдите на вкладку Права доступа к группе.
-
Выберите пользователя в списке и нажмите
-
Нажмите Настроить доступ.
-
Нажмите
напротив роли, которую хотите отозвать. -
Нажмите Сохранить.
Совет
Чтобы открыть список пользователей, которым доступно управление группой на уровне роли в организации (например, администратор или владелец организации), перейдите на вкладку Права доступа к группе и включите опцию Наследуемые роли.
Настроить доступ группы к работе в Yandex Cloud
Чтобы участники группы могли работать с сервисами Yandex Cloud, назначьте группе соответствующие роли.
Назначить роль на отдельный ресурс
В консоли управления можно назначить роль на облако, каталог или сервисный аккаунт.
Чтобы выдать доступ группе на ресурс:
-
Выберите облако или каталог.
-
Перейдите на вкладку Права доступа.
-
Нажмите Назначить роли.
-
В окне Настройка прав доступа нажмите Выбрать пользователя.
-
Перейдите на вкладку Группы и выберите группу, или воспользуйтесь поиском по названию группы.
-
Нажмите Добавить роль.
-
Выберите роль в облаке или каталоге.
-
Нажмите Сохранить.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
-
Выберите роль из списка в разделе Роли.
-
Назначьте роль с помощью команды:
yc <имя_сервиса> <ресурс> add-access-binding <имя_ресурса>|<идентификатор_ресурса> \ --role <идентификатор_роли> \ --subject group:<идентификатор_группы>
Где:
<имя_сервиса>
— имя сервиса, для доступа к ресурсу которого назначается роль, напримерresource-manager
.<ресурс>
— категория ресурса, напримерcloud
.<имя_ресурса>
— имя ресурса. Вы можете указать имя или идентификатор ресурса.<идентификатор_ресурса>
— идентификатор ресурса.<идентификатор_роли>
— идентификатор роли, напримерresource-manager.clouds.owner
.<идентификатор_группы>
— идентификатор группы, которой назначается роль.
Например, назначьте роль
resource-manager.viewer
на облакоmycloud
:yc resource-manager cloud add-access-binding mycloud \ --role resource-manager.viewer \ --subject group:aje6o61dvog2h6g9a33s
Воспользуйтесь методом updateAccessBindings
для соответствующего ресурса.
-
Выберите роль из списка в разделе Роли.
-
Сформируйте тело запроса, например в файле
body.json
. В свойствеaction
укажитеADD
, а в свойствеsubject
- типgroup
и идентификатор группы:body.json:
{ "accessBindingDeltas": [{ "action": "ADD", "accessBinding": { "roleId": "editor", "subject": { "id": "<идентификатор_группы>", "type": "group" } } } ] }
-
Назначьте роль, например на каталог с идентификатором
b1gvmob95yysaplct532
:export FOLDER_ID=b1gvmob95yysaplct532 export IAM_TOKEN=CggaATEVAgA... curl -X POST \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${IAM_TOKEN}" \ -d '@body.json' \ "https://resource-manager.api.cloud.yandex.net/resource-manager/v1/folders/${FOLDER_ID}:updateAccessBindings"
Вы можете ознакомиться с подробной инструкцией назначения роли для соответствующего ресурса:
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
-
Добавьте в конфигурационный файл параметры ресурса, укажите нужную роль и перечень групп:
resource "yandex_resourcemanager_cloud_iam_binding" "admin" { cloud_id = "<идентификатор_облака>" role = "<идентификатор_роли>" members = ["group:<идентификатор_группы>"] }
Где:
cloud_id
— идентификатор облака. Вы также можете назначить роль внутри отдельного каталога. Для этого вместоcloud_id
укажитеfolder_id
и нужный идентификатор каталога в параметрах ресурса.role
— назначаемая роль. Обязательный параметр.members
— список групп, которым назначается роль. Указывается в видеgroup:<идентификатор_группы>
. Обязательный параметр.
Более подробную информацию о параметрах ресурса
yandex_resourcemanager_cloud_iam_binding
, см. в документации провайдера. -
Проверьте корректность конфигурационных файлов.
-
В командной строке перейдите в папку, где вы создали конфигурационный файл.
-
Выполните проверку с помощью команды:
terraform plan
Если конфигурация описана верно, в терминале отобразится список создаваемых ресурсов и их параметров. Если в конфигурации есть ошибки, Terraform на них укажет.
-
-
Разверните облачные ресурсы.
-
Если в конфигурации нет ошибок, выполните команду:
terraform apply
-
Подтвердите создание ресурсов: введите в терминал слово
yes
и нажмите Enter.
После этого в указанном каталоге будут созданы все требуемые ресурсы. Проверить создание ресурса можно в консоли управления или с помощью команды CLI:
yc resource-manager folder list-access-bindings <folder-name>|<folder-id>
-
Назначить роль на всю организацию
Роль, которая выдана на всю организацию, позволяет участникам группы управлять всеми ресурсами Yandex Cloud, которые подключены к организации, в соответствии с правами роли.
-
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
-
Назначьте роль для группы:
yc organization-manager organization add-access-binding \ --subject=group:<идентификатор_группы> \ --role=<идентификатор_роли> \ <идентификатор_организации>
-
Проверьте, что запрошенные права были выданы:
yc organization-manager organization list-access-bindings <идентификатор_организации>
Ответ содержит список всех ролей, выданных пользователям и группам в организации:
+------------------------------------------+--------------+----------------------+ | ROLE ID | SUBJECT TYPE | SUBJECT ID | +------------------------------------------+--------------+----------------------+ | organization-manager.admin | userAccount | ajev1p2345lj67u89adi | | organization-manager.organizations.owner | userAccount | ajev1p2345lj67u89adi | | editor | group | ajeq123cmuotesu4e567 | | viewer | group | ajeq123cmuotesu4e567 | +------------------------------------------+--------------+----------------------+