Если вам необходимо назначить разные разрешения сотрудникам вашей Enterprise для доступа к ресурсам ECS, IAM является хорошим выбором для управления разрешениями с тонкой гранулярностью. IAM обеспечивает аутентификацию идентификации, управление разрешениями и контроль доступа, помогая вам обеспечить безопасный доступ к вашим ресурсам.
С помощью IAM вы можете использовать свою учетную запись для создания IAM users и назначения разрешений пользователям, чтобы контролировать их доступ к определённым ресурсам. Например, некоторым разработчикам программного обеспечения в вашей Enterprise необходимо использовать ресурсы ECS, но им не должно быть разрешено удалять ресурсы или выполнять любые другие операции с высоким риском. В этом случае вы можете создать IAM users для разработчиков и предоставить им только те разрешения, которые необходимы для использования ресурсов ECS.
Если вашей учетной записи не требуется создание отдельных IAM users для управления разрешениями, пропустите этот раздел.
IAM — бесплатный сервис. Вы платите только за ресурсы в своей учетной записи. Для получения дополнительной информации об IAM см. IAM Service Overview.
По умолчанию новые IAM users не имеют назначенных разрешений. Необходимо добавить пользователя в одну или несколько групп и прикрепить к этим группам политики разрешений или роли. Пользователи наследуют разрешения от групп, в которые они добавлены, и могут выполнять указанные операции над облачными сервисами в соответствии с разрешениями.
ECS — сервис уровня проекта, развернутый в определённых регионах. Чтобы назначить разрешения ECS группе пользователей, укажите область как проекты, специфичные для региона, и выберите проекты, для которых разрешения будут действовать. Если вы выберете All projects, разрешения вступят в силу для групп пользователей во всех проектах, специфичных для региона. При доступе к ECS пользователям необходимо переключиться в регион, где у них есть разрешения на использование этого сервиса.
Вы можете предоставить пользователям разрешения, используя роли и политики. Большинство политик определяют разрешения на основе API. Для действий API, поддерживаемых ECS, см. «Permissions and Supported Actions» в Elastic Cloud Server API Reference.
Table 1 и Table 2 перечисляют все системно-определённые политики и роли ECS.
Policy/Role Name | Описание | Содержимое политики |
|---|---|---|
ECS FullAccess | Разрешения администратора для ECS. Пользователи, получившие эти разрешения, могут выполнять все операции с ECS, включая создание, удаление и просмотр ECS, а также изменение спецификаций ECS. | |
ECS CommonOperations | Общие пользовательские разрешения для ECS. Пользователи, получившие эти разрешения, могут запускать, останавливать, перезапускать и запрашивать ECS. | |
ECS ReadOnlyAccess | Разрешения только для чтения для ECS. Пользователи, получившие эти разрешения, могут только просматривать данные ECS. |
Имя роли | Описание | Содержимое роли |
|---|---|---|
Server Administrator | Полные разрешения для ECS. Эту роль необходимо использовать вместе с ролью Tenant Guest в том же проекте. Если пользователю необходимо создавать, удалять или изменять ресурсы других сервисов, ему также должны быть предоставлены административные разрешения соответствующих сервисов в том же проекте. Например, если пользователю необходимо создать VPC при создании ECS, ему также должны быть предоставлены разрешения роли VPC Administrator. |
Table 3 перечисляет общие операции, поддерживаемые каждой системно-определенной политикой ECS. Выберите политики по необходимости.
Операция | ECS FullAccess | ECS CommonOperations | ECS ReadOnlyAccess |
|---|---|---|---|
Создание ECS | Поддерживается | Не поддерживается | Не поддерживается |
Удалённый вход в ECS в консоли управления | Поддерживается | Поддерживается | Не поддерживается (VNC login not supported) |
Запрос списка ECS | Поддерживается | Поддерживается | Поддерживается |
Запрос сведений ECS | Поддерживается | Поддерживается | Поддерживается |
Изменение сведений ECS | Поддерживается | Не поддерживается | Не поддерживается |
Запуск ECS | Поддерживается | Поддерживается | Не поддерживается |
Остановка ECS | Поддерживается | Поддерживается | Не поддерживается |
Перезапуск ECS | Поддерживается | Поддерживается | Не поддерживается |
Удаление ECS | Поддерживается | Не поддерживается | Не поддерживается |
Переустановка ОС ECS | Поддерживается | Не поддерживается | Не поддерживается |
Изменение ОС ECS | Поддерживается | Не поддерживается | Не поддерживается |
Подключение диска к ECS | Поддерживается | Не поддерживается | Не поддерживается |
Отключение диска от ECS | Поддерживается | Не поддерживается | Не поддерживается |
Запрос списка дисков | Поддерживается | Поддерживается | Поддерживается |
Подключение NIC к ECS | Поддерживается | Не поддерживается | Не поддерживается |
Отключение NIC от ECS | Поддерживается | Не поддерживается | Не поддерживается |
Запрос списка NIC | Поддерживается | Поддерживается | Поддерживается |
Добавление тегов к ECS | Поддерживается | Поддерживается | Не поддерживается |
Изменение спецификаций ECS | Поддерживается | Не поддерживается | Не поддерживается |
Запрос списка флейворов ECS | Поддерживается | Поддерживается | Поддерживается |
Запрос групп ECS | Поддерживается | Поддерживается | Поддерживается |
{"Version": "1.1","Statement": [{"Effect": "Allow","Action": ["ecs:*:*","evs:*:get","evs:*:list","evs:volumes:create","evs:volumes:delete","evs:volumes:attach","evs:volumes:detach","evs:volumes:manage","evs:volumes:update","evs:volumes:use","evs:volumes:uploadImage","evs:snapshots:create","vpc:*:get","vpc:*:list","vpc:networks:create","vpc:networks:update","vpc:subnets:update","vpc:subnets:create","vpc:ports:*","vpc:routers:get","vpc:routers:update","vpc:securityGroups:*","vpc:securityGroupRules:*","vpc:floatingIps:*","vpc:publicIps:*","ims:images:create","ims:images:delete","ims:images:get","ims:images:list","ims:images:update","ims:images:upload"]}]}
{"Version": "1.1","Statement": [{"Effect": "Allow","Action": ["ecs:*:get*","ecs:*:list*","ecs:*:start","ecs:*:stop","ecs:*:reboot","ecs:blockDevice:use","ecs:cloudServerFpgaImages:relate","ecs:cloudServerFpgaImages:register","ecs:cloudServerFpgaImages:delete","ecs:cloudServerFpgaImages:unrelate","ecs:cloudServers:setAutoRecovery","ecs:cloudServerPasswords:reset","ecs:cloudServerPorts:modify","ecs:cloudServers:vnc","ecs:diskConfigs:use","ecs:securityGroups:use","ecs:serverGroups:manage","ecs:serverFloatingIps:use","ecs:serverKeypairs:*","ecs:serverPasswords:manage","ecs:servers:createConsole","ecs:servers:createImage","ecs:servers:setMetadata","ecs:servers:setTags","ecs:serverVolumes:use","evs:*:get*","evs:*:list*","evs:snapshots:create","evs:volumes:uploadImage","evs:volumes:delete","evs:volumes:update","evs:volumes:attach","evs:volumes:detach","evs:volumes:manage","evs:volumes:use","vpc:*:get*","vpc:*:list*","vpc:floatingIps:create","vpc:floatingIps:update","vpc:floatingIps:delete","vpc:publicIps:update","vpc:publicIps:delete","ims:images:create","ims:images:delete","ims:images:get","ims:images:list","ims:images:update","ims:images:upload"]}]}
{"Version": "1.1","Statement": [{"Effect": "Allow","Action": ["ecs:*:get*","ecs:*:list*","ecs:serverGroups:manage","ecs:serverVolumes:use","evs:*:get*","evs:*:list*","vpc:*:get*","vpc:*:list*","ims:*:get*","ims:*:list*"]}]}
{"Version": "1.1","Statement": [{"Action": ["ecs:*:*","evs:*:get","evs:*:list","evs:volumes:create","evs:volumes:delete","evs:volumes:attach","evs:volumes:detach","evs:volumes:manage","evs:volumes:update","evs:volumes:uploadImage","evs:snapshots:create","vpc:*:get","vpc:*:list","vpc:networks:create","vpc:networks:update","vpc:subnets:update","vpc:subnets:create","vpc:routers:get","vpc:routers:update","vpc:ports:*","vpc:privateIps:*","vpc:securityGroups:*","vpc:securityGroupRules:*","vpc:floatingIps:*","vpc:publicIps:*","vpc:bandwidths:*","vpc:firewalls:*","ims:images:create","ims:images:delete","ims:images:get","ims:images:list","ims:images:update","ims:images:upload"],"Effect": "Allow"}]}