Отозвать роль у пользователя
Если вы хотите запретить пользователю доступ к ресурсу, отзовите у него соответствующие роли на этот ресурс и на ресурсы, от которых наследуются права доступа. Подробнее об управлении доступом в Yandex Cloud читайте в документации Yandex Identity and Access Management.
Отозвать роль может пользователь с ролью администратора organization-manager.admin или владельца organization-manager.organizations.owner организации.
-
Войдите в сервис Yandex Identity Hub
с учетной записью администратора или владельца организации. -
На панели слева выберите
Права доступа. -
Найдите в списке нужного пользователя. При необходимости воспользуйтесь строкой поиска или фильтром.
-
В строке с нужным пользователем нажмите значок
и выберите Назначить роли. В открывшемся окне:-
Нажмите значок
рядом с ролью, чтобы удалить ее. -
Нажмите кнопку Сохранить.
-
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
-
Посмотрите, кому и какие роли назначены на ресурс:
yc <имя_сервиса> <ресурс> list-access-bindings <имя_или_идентификатор_ресурса>Где:
<имя_сервиса>— имя сервиса, которому принадлежит ресурс, например,organization-manager.<ресурс>— категория ресурса. Для организации всегда имеет значениеorganization.<имя_или_идентификатор_ресурса>— имя или идентификатор ресурса. Вы можете указать имя или идентификатор ресурса. Для организации в качестве имени используйте техническое название.
Например, посмотрите, кому и какие роли назначены в организации с идентификатором
bpf3crucp1v2********:yc organization-manager organization list-access-bindings bpf3crucp1v2********Результат:
+------------------------------------------+--------------+----------------------+ | ROLE ID | SUBJECT TYPE | SUBJECT ID | +------------------------------------------+--------------+----------------------+ | organization-manager.organizations.owner | userAccount | aje3r40rsemj******** | | organization-manager.admin | userAccount | aje6o61dvog2******** | +------------------------------------------+--------------+----------------------+ -
Чтобы удалить права доступа, выполните команду:
yc <имя_сервиса> <ресурс> remove-access-binding <имя_или_идентификатор_ресурса> \ --role <идентификатор_роли> \ --subject <тип_субъекта>:<идентификатор_субъекта>Где:
--role— идентификатор роли, которую надо отозвать, например,organization-manager.admin.<тип_субъекта>— тип субъекта, у которого отзывается роль.<идентификатор_субъекта>— идентификатор субъекта.
Например, чтобы отозвать роль у пользователя с идентификатором
aje6o61dvog2********:yc organization-manager organization remove-access-binding bpf3crucp1v2******** \ --role organization-manager.admin \ --subject userAccount:aje6o61dvog2********
-
Посмотрите, кому и какие роли назначены на ресурс с помощью метода
listAccessBindings. Например, чтобы посмотреть роли в организации с идентификаторомbpf3crucp1v2********:export ORGANIZATION_ID=bpf3crucp1v2******** export IAM_TOKEN=<IAM-токен> curl \ --header "Authorization: Bearer ${IAM_TOKEN}" \ "https://organization-manager.api.yandexcloud.kz/organization-manager/v1/organizations/${ORGANIZATION_ID}:listAccessBindings"Результат:
{ "accessBindings": [ { "subject": { "id": "aje6o61dvog2********", "type": "userAccount" }, "roleId": "organization-manager.admin" } ] } -
Сформируйте тело запроса, например, в файле
body.json. В теле запроса укажите, какие права доступа необходимо удалить. Например, отзовите у пользователяaje6o61dvog2********рольorganization-manager.admin:{ "accessBindingDeltas": [{ "action": "REMOVE", "accessBinding": { "roleId": "organization-manager.admin", "subject": { "id": "aje6o61dvog2********", "type": "userAccount" } } }] } -
Отзовите роль, удалив указанные права доступа:
export ORGANIZATION_ID=bpf3crucp1v2******** export IAM_TOKEN=<IAM-токен> curl \ --request POST \ --header "Content-Type: application/json" \ --header "Authorization: Bearer ${IAM_TOKEN}" \ --data '@body.json' \ "https://organization-manager.api.yandexcloud.kz/organization-manager/v1/organizations/${ORGANIZATION_ID}:updateAccessBindings"