Пользовательские разрешения

Для детального управления правами и разрешениями на ресурсы ECS подойдет сервис IAM (Identity and Access Management). IAM обеспечивает проверку подлинности, управление разрешениями и контроль доступа к ресурсам.

По умолчанию новым IAM-пользователям не назначены разрешения. Нужно добавить пользователя в одну или несколько групп и привязать политики разрешений или роли к этим группам. Пользователи наследуют разрешения от групп, в которые они добавлены, и могут выполнять определенные операции с облачными сервисами на основе разрешений.

Разрешения предоставляются с помощью ролей и политик:

  • Роли — тип авторизации, который определяет разрешения, связанные с обязанностями пользователя. Имеет ограниченное число ролей уровня сервиса. При этом типе необходимо назначать как основные управляющие роли, так и различные пользовательские.

  • Политики — тип авторизации, который определяет разрешения, необходимые для выполнения операций с определенными облачными ресурсами при определенных условиях. Этот механизм обеспечивает более гибкую авторизацию на основе политик, отвечающую требованиям безопасного контроля доступа. Например, можно дать разрешение пользователям ECS только для управления определенным типом флейвора виртуальной машины.

Системные политики ECS

Название политики

Описание

Тип

Список разрешений политики

ECS FullAccess

Права администратора для ECS. Пользователи с этими разрешениями, могут выполнять все операции с ВМ ECS, включая создание, удаление, просмотр, а также изменение спецификаций ECS.

Определяемая системой политика

Разрешения ECS FullAccess

ECS CommonOperations

Общие пользовательские разрешения для ECS. Пользователи могут запускать, останавливать, перезапускать и отправлять запросы к ECS.

Определяемая системой политика

Разрешения ECS CommonOperations

ECS ReadOnlyAccess

Разрешения только для чтения ECS. Пользователи могут просматривать данные ECS.

Определяемая системой политика

Разрешения ECS ReadOnlyAccess

Server Administrator

Полные разрешения для ECS. Эта роль должна использоваться вместе с ролью «Tenant Guest» в том же проекте.

Для создания, удаления или изменения ресурсов других служб пользователю также должны быть предоставлены права администратора соответствующих служб в том же проекте. Например, если пользователю необходимо создать новый VPC для ECS, то у него должны быть разрешения с роли «VPC Administrator».

Системная роль

Разрешения Server Administrator

Разрешения ECS FullAccess

{
     "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:cloudServerFpgaImags: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"
                     ]
             }
     ]
}

Разрешения ECS CommonOperations

{
     "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:cloudServerFpgaImags: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"
                     ]
             }
     ]
 }

Разрешения ECS ReadOnlyAccess

{
     "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*"
                     ]
             }
     ]
 }

Разрешения Server Administrator

{
 "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"
     }
 ]
 }
Запустили Evolution free tier
для Dev & Test
Получить