Если с хранилищем работают несколько пользователей и каждому нужен определенный уровень доступа, вы можете разграничить доступ к ресурсам с помощью ролей. Роль пользователя — предустановленный набор разрешений, который определяет, какие операции с ресурсами может выполнить пользователь.
В Object Storage доступ к ресурсам разграничивается через проектные и сервисные роли.
Проектные роли
Проектные роли содержат набор разрешений для всех сервисов текущего проекта. Их можно использовать, если проект небольшой, а сложного разграничения доступа для пользователей не требуется.
В Object Storage используются несколько проектных ролей.
-
Пользователь проекта может просматривать информацию о ресурсах и скачивать объекты.
-
Пользователь сервисов может просматривать список бакетов в проекте.
-
Администратор проекта может управлять ресурсами и настраивать к ним доступ.
Если права нужно настроить более гибко, например разрешить пользователю просматривать и редактировать настройки Bucket Policy, назначьте ему роль Пользователь сервисов.
Сервисные роли
В отличие от проектных, сервисные роли действуют только в хранилище и не влияют на другие сервисы платформы. Это позволит вам более гибко настроить доступ к ресурсам хранилища. Например, чтобы не назначать пользователю роль Администратор проекта, вы можете дать полные права только на ресурсы хранилища.
В таблице ниже перечислены все доступные сервисные роли Object Storage и операции, которые разрешает каждая роль.
Роль | Описание | Разрешенные операции |
---|---|---|
s3e.viewer-acl |
| |
s3e.editor-acl | Разрешает изменять конфигурацию бакета. | |
s3e.viewer |
| |
s3e.editor |
| |
s3e.admin |
|
|
Назначить проектную роль
Проектную роль можно назначить пользователю проекта и сервисному аккаунту.
При назначении прав действует принцип иерархии: вы можете назначить только те роли, которые находятся на одном уровне с вашей, либо ниже ее. Назначить себе или другому пользователю роль выше нельзя.
-
Администратор организации — может назначать роли любого уровня.
-
Администратор проекта — может назначать любые роли, но только на доступные ему проекты.
-
Администратор пользователей — может назначать только пользовательские роли на проекты.
Назначить проектную роль пользователю
Проектная роль доступна как для пользователей с авторизацией по логину и паролю, так и с авторизацией по SSO.
Назначить роль можно при создании пользователя или при изменении прав созданного пользователя.
Подробнее о назначении ролей — в разделе Добавление пользователей.
Назначить проектную роль сервисному аккаунту
Чтобы назначить проектную роль для сервисного аккаунта:
-
В разделе Пользователи откройте вкладку Сервисные аккаунты.
-
Нажмите на
в строке с названием аккаунта и выберите Редактировать.
-
Выберите роль:
-
Пользователь проекта — чтение списка ресурсов, информации о них, а также скачиванию объектов;
-
Администратор проекта — полный доступ к ресурсам хранилища.
-
-
Нажмите Сохранить.
После назначения роли, сервисный аккаунт получит набор прав для работы с ресурсами.
Назначить сервисную роль
Сервисные роли можно назначать только Пользователям сервисов. Это может сделать Администратор организации, Администратор проекта и Администратор пользователей.
Роль Пользователь сервисов добавляется при создании пользователя или при изменении прав созданного пользователя. Вы можете выбрать:
-
общую роль — разрешения будут действовать на все бакеты и вложенные в них объекты;
-
роль на бакет — разрешения будут действовать на отдельный бакет.
В поле Роли выберите сервисную роль. Вы можете перечислить несколько ролей, например s3e.editor и s3e.viewer-acl.
Назначенные на бакеты права будут действовать и на вложенные объекты.
- Проектные роли
- Сервисные роли
- Назначить проектную роль
- Назначить сервисную роль