Permissions Management
If you need to assign different permissions to employees in your enterprise to access your MRS resources on Huawei Cloud, IAM is a good choice for fine-grained permissions management. IAM provides identity authentication, permissions management, and access control, helping you secure access to your Huawei Cloud resources.
With IAM, you can create IAM users under your Huawei Cloud account, and assign permissions to these users to control their access to specific resources. For example, some software developers in your enterprise need to use MRS resources but must not delete MRS clusters or perform any high-risk operations. To achieve this goal, you can create IAM users for the software developers and grant them only the permissions required for using MRS cluster resources.
If your Huawei Cloud account does not require individual IAM users for permissions management, skip this section.
IAM is free of charge. You pay only for the resources you use. For more information about IAM, see IAM Service Overview.
MRS Permission Description
By default, new IAM users do not have any permissions. To assign permissions to a user, add the user to one or more groups and assign permissions policies or roles to these groups. The user then inherits permissions from the groups it is a member of and can perform specified operations on cloud services based on the permissions.
MRS is a project-level service deployed and accessed in specific physical regions. To assign permissions to a user group, specify Scope as Region-specific projects and select projects in the corresponding region for the permissions to take effect. If All projects is selected, the permissions will take effect for the user group in all region-specific projects. When accessing MRS, the users need to switch to a region where they have been authorized to use the MRS service.
You can grant permissions by using roles and policies.
- Roles: A type of coarse-grained authorization mechanism that defines permissions related to user responsibilities. This mechanism provides only a limited number of service-level roles for authorization. When using roles to grant permissions, you need to also assign other roles on which the permissions depend to take effect. However, roles are not an ideal choice for fine-grained authorization and secure access control.
- Policies: A type of fine-grained authorization mechanism that defines permissions required to perform operations on specific cloud resources under certain conditions. This mechanism allows for more flexible policy-based authorization, meeting requirements for secure access control. For example, you can grant MRS users only the permissions for performing specified operations on MRS clusters, such as creating a cluster and querying a cluster list rather than deleting a cluster. Most policies define permissions based on APIs. For the API actions supported by MRS, see Permissions Policies and Supported Actions.
Policy |
Description |
Type |
---|---|---|
MRS FullAccess |
Administrator permissions for MRS. Users granted these permissions can operate and use all MRS resources. |
Fine-grained policy |
MRS CommonOperations |
Common user permissions for MRS. Users granted these permissions can use MRS but cannot add or delete resources. |
Fine-grained policy |
MRS ReadOnlyAccess |
Read-only permission for MRS. Users granted these permissions can only view MRS resources. |
Fine-grained policy |
MRS Administrator |
Permissions:
|
RBAC policy |
Table 2 lists the common operations supported by each system-defined policy or role of MRS. Select the policies or roles as required.
Operation |
MRS FullAccess |
MRS CommonOperations |
MRS ReadOnlyAccess |
MRS Administrator |
---|---|---|---|---|
Creating a cluster |
√ |
x |
x |
√ |
Resizing a cluster |
√ |
x |
x |
√ |
Upgrading node specifications |
√ |
x |
x |
√ |
Deleting a cluster |
√ |
x |
x |
√ |
Querying cluster details |
√ |
√ |
√ |
√ |
Querying a cluster list |
√ |
√ |
√ |
√ |
Configuring an auto scaling rule |
√ |
x |
x |
√ |
Querying a host list |
√ |
√ |
√ |
√ |
Querying operation logs |
√ |
√ |
√ |
√ |
Creating and executing a job |
√ |
√ |
x |
√ |
Stopping a job |
√ |
√ |
x |
√ |
Deleting a single job |
√ |
√ |
x |
√ |
Deleting jobs in batches |
√ |
√ |
x |
√ |
Querying job details |
√ |
√ |
√ |
√ |
Querying a job list |
√ |
√ |
√ |
√ |
Creating a folder |
√ |
√ |
x |
√ |
Deleting a file |
√ |
√ |
x |
√ |
Querying a file list |
√ |
√ |
√ |
√ |
Operating cluster tags in batches |
√ |
√ |
x |
√ |
Creating a single cluster tag |
√ |
√ |
x |
√ |
Deleting a single cluster tag |
√ |
√ |
x |
√ |
Querying a resource list by tag |
√ |
√ |
√ |
√ |
Querying cluster tags |
√ |
√ |
√ |
√ |
Accessing Manager |
√ |
√ |
x |
√ |
Querying a patch list |
√ |
√ |
√ |
√ |
Installing a patch |
√ |
√ |
x |
√ |
Uninstalling a patch |
√ |
√ |
x |
√ |
Authorizing O&M channels |
√ |
√ |
x |
√ |
Sharing O&M channel logs |
√ |
√ |
x |
√ |
Querying an alarm list |
√ |
√ |
√ |
√ |
Subscribing to alarm notification |
√ |
√ |
x |
√ |
Submitting an SQL statement |
√ |
√ |
x |
√ |
Querying SQL results |
√ |
√ |
x |
√ |
Canceling an SQL execution task |
√ |
√ |
x |
√ |
MRS FullAccess Policy
{ "Version": "1.1", "Statement": [ { "Action": [ "mrs:*:*", "ecs:*:*", "bms:*:*", "evs:*:*", "vpc:*:*", "kms:*:*", "rds:*:*", "bss:*:*" ], "Effect": "Allow" } ] }
MRS CommonOperations Policy
{ "Version": "1.1", "Statement": [ { "Action": [ "mrs:*:get*", "mrs:*:list*", "ecs:*:get*", "ecs:*:list*", "bms:*:get*", "bms:*:list*", "evs:*:get*", "evs:*:list*", "vpc:*:get*", "vpc:*:list*", "mrs:job:submit", "mrs:job:stop", "mrs:job:delete", "mrs:job:checkSql", "mrs:job:batchDelete", "mrs:file:create", "mrs:file:delete", "mrs:tag:batchOperate", "mrs:tag:create", "mrs:tag:delete", "mrs:manager:access", "mrs:patch:install", "mrs:patch:uninstall", "mrs:ops:grant", "mrs:ops:shareLog", "mrs:alarm:subscribe", "mrs:alarm:delete", "kms:*:get*", "kms:*:list*", "rds:*:get*", "rds:*:list*", "mrs:bootstrap:*", "bss:*:view*" ], "Effect": "Allow" }, { "Action": [ "mrs:cluster:create", "mrs:cluster:resize", "mrs:cluster:scaleUp", "mrs:cluster:delete", "mrs:cluster:policy" ], "Effect": "Deny" } ] }
MRS ReadOnlyAccess Policy
{ "Version": "1.1", "Statement": [ { "Action": [ "mrs:*:get*", "mrs:*:list*", "mrs:tag:count", "ecs:*:get*", "ecs:*:list*", "bms:*:get*", "bms:*:list*", "evs:*:get*", "evs:*:list*", "vpc:*:get*", "vpc:*:list*", "kms:*:get*", "kms:*:list*", "rds:*:get*", "rds:*:list*", "bss:*:view*" ], "Effect": "Allow" }, { "Action": [ "mrs:cluster:create", "mrs:cluster:resize", "mrs:cluster:scaleUp", "mrs:cluster:delete", "mrs:cluster:policy", "mrs:job:submit", "mrs:job:stop", "mrs:job:delete", "mrs:job:batchDelete", "mrs:file:create", "mrs:file:delete", "mrs:tag:batchOperate", "mrs:tag:create", "mrs:tag:delete", "mrs:manager:access", "mrs:patch:install", "mrs:patch:uninstall", "mrs:ops:grant", "mrs:ops:shareLog", "mrs:alarm:subscribe" ], "Effect": "Deny" } ] }
MRS Administrator Policy
{ "Depends": [ { "catalog": "BASE", "display_name": "Server Administrator" }, { "catalog": "BASE", "display_name": "Tenant Guest" } ], "Version": "1.0", "Statement": [ { "Action": [ "MRS:MRS:*" ], "Effect": "Allow" } ] }
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.