Using IAM Roles or Policies to Grant Access to AS
System-defined permissions in Role/Policy-based Authorization provided by IAM let you control access to AS. With IAM, you can:
- Create IAM users for employees based on your enterprise's organizational structure. Each IAM user will have their own security credentials for accessing AS resources.
- Grant users only the permissions required to perform a given task based on their job responsibilities.
- Entrust a Huawei Cloud account or a cloud service to perform efficient O&M on your AS resources.
If your Huawei Cloud account meets your permissions requirements, skip this section.
Figure 1 shows the process flow of role/policy-based authorization.
Prerequisites
Before granting permissions to user groups, learn about system-defined permissions in Role/Policy-based Permissions Management for AS. To grant permissions for other services, learn about all system-defined permissions supported by IAM.
Process Flow
- On the IAM console, create a user group and grant it permissions (AS ReadOnlyAccess as an example).
Create a user group on the IAM console, and assign the ASReadOnlyAccess permissions to the group.
- Create an IAM user and add it to the created user group.
Create a user on the IAM console and add the user to the group created in 1.
- Log in and verify permissions.
Log in to the AS console using the IAM user, switch to a region where the permissions take effect, and verify the permissions.
- Click Create AS Group in the upper right corner. If a message appears indicating that you have insufficient permissions to perform the operation, the ASReadOnlyAccess policy is in effect.
- Choose another service from Service List. If a message appears indicating that you have insufficient permissions to access the service, the ASReadOnlyAccess policy is in effect.
- (Optional) Create custom policies to supplement the system-defined policies of AS. Add actions in custom policies as needed. For details, see Actions Supported by Policy-based Authorization.
To create a custom policy, choose either visual editor or JSON.
- Visual editor: Select cloud services, actions, resources, and request conditions. This does not require knowledge of policy syntax.
- JSON: Create a JSON policy or edit an existing one.
For details, see Creating a Custom Policy. The following lists examples of common AS custom policies.
Example Custom Policies
- Example 1: Grant permissions to remove instances from AS groups and create AS configurations.
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "as:instances:delete", "as:configs:create" ] } ] }
- Example 2: Grant permissions to deny AS group deletion.
A policy with only "Deny" permissions must be used together with other policies. If the permissions assigned to an IAM user contain both "Allow" and "Deny", the "Deny" permissions take precedence over the "Allow" permissions.
Assume that you need to grant the permissions of the AutoScaling FullAccess policy to a user but want to prevent the user from deleting AS groups. You can create a custom policy for denying AS group deletion, and attach this policy together with the AutoScaling FullAccess policy to the user. As an explicit deny in any policy overrides any allows, the user can perform all operations on AS excepting deleting AS groups. The following is an example of a deny policy:
{ "Version": "1.1", "Statement": [ { "Action": [ "as:groups:delete" ], "Effect": "Deny" } ] } - Example 3: Create a custom policy containing multiple actions.
A custom policy can contain the actions of one or multiple services that are of the same type (global or project-level). The following is an example policy containing multiple actions:
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "ecs:cloudServerFlavors:get" ] }, { "Effect": "Allow", "Action": [ "as:quotas:get", "as:policies:get" ] } ] }
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot
