Deckhouse components interact with Huawei Cloud resources through the Huawei Cloud API. To configure this connection, you need to create a user in the Huawei Cloud IAM service and provide it with the necessary permissions. | Для взаимодействия с ресурсами в облаке Huawei Cloud компоненты Deckhouse используют API Huawei Cloud. Для настройки этого подключения требуется создать пользователя в сервисе Huawei Cloud IAM и назначить ему соответствующие права доступа. |
Configuring IAM via the web interface | Настройка IAM через веб-интерфейс |
To configure IAM via the web interface, first create a new user group and assign the necessary permissions. Follow these steps: | Для настройки IAM через веб-интерфейс сначала создайте новую группу пользователей и назначьте ей необходимые права. Для этого выполните следующие шаги: |
|
|
Then add a new user. Follow these steps: | Добавьте нового пользователя. Для этого выполните следующие шаги: |
|
|
JSON policies | JSON-политики |
Below are the contents of the policies in JSON format: | Далее приведено содержание политик в формате JSON: |
json { “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: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” ], “Effect”: “Allow” } ] } | json { “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: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” ], “Effect”: “Allow” } ] } |
json { “Version”: “1.1”, “Statement”: [ { “Action”: [ “vpc:vpcs:”, “vpc:routers:”, “vpc:networks:”, “vpc:subnets:”, “vpc:ports:”, “vpc:privateIps:”, “vpc:peerings:”, “vpc:routes:”, “vpc:lbaas:”, “vpc:vpns:”, “ecs::get”, “ecs::list”, “elb::get”, “elb::list” ], “Effect”: “Allow” } ] } | json { “Version”: “1.1”, “Statement”: [ { “Action”: [ “vpc:vpcs:”, “vpc:routers:”, “vpc:networks:”, “vpc:subnets:”, “vpc:ports:”, “vpc:privateIps:”, “vpc:peerings:”, “vpc:routes:”, “vpc:lbaas:”, “vpc:vpns:”, “ecs::get”, “ecs::list”, “elb::get”, “elb::list” ], “Effect”: “Allow” } ] } |
json { “Version”: “1.1”, “Statement”: [ { “Action”: [ “nat::”, “vpc::” ], “Effect”: “Allow” } ] } | json { “Version”: “1.1”, “Statement”: [ { “Action”: [ “nat::”, “vpc::” ], “Effect”: “Allow” } ] } |
json { “Version”: “1.1”, “Statement”: [ { “Action”: [ “kps:domainKeypairs:”, “ecs:serverKeypairs:” ], “Effect”: “Allow” } ] } | json { “Version”: “1.1”, “Statement”: [ { “Action”: [ “kps:domainKeypairs:”, “ecs:serverKeypairs:” ], “Effect”: “Allow” } ] } |
json { “Version”: “1.1”, “Statement”: [ { “Action”: [ “elb::”, “vpc::get”, “vpc::list”, “ecs::get”, “ecs::list” ], “Effect”: “Allow” } ] } | json { “Version”: “1.1”, “Statement”: [ { “Action”: [ “elb::”, “vpc::get”, “vpc::list”, “ecs::get”, “ecs::list” ], “Effect”: “Allow” } ] } |