Reviewed-by: Gergo-Bence Lorincz <a200452876@noreply.gitea.eco.tsi-dev.otc-service.com> Co-authored-by: qiujiandong1 <qiujiandong1@huawei.com> Co-committed-by: qiujiandong1 <qiujiandong1@huawei.com>
51 KiB
Permissions
If you need to grant your enterprise personnel permission to access your ASM resources, use Identity and Access Management (IAM). IAM provides identity authentication, fine-grained permissions management, and access control. IAM helps you secure access to your cloud resources. If your cloud account does not require individual IAM users for permissions management, you can skip this section.
IAM is a free service. You only pay for the resources in your account.
With IAM, you can control access to specific cloud resources. For example, if you want some software developers in your enterprise to be able to use ASM resources but do not want them to delete service meshes or perform any other high-risk operations, you can create IAM users and grant permission to use service meshes but not permission to delete them.
IAM supports role/policy-based authorization and identity policy-based authorization.
The following table describes the differences between these two authorization models.
Authorization Model |
Core Relationship |
Permissions |
Authorization Method |
Scenario |
|---|---|---|---|---|
Role/Policy |
User-permission-authorization scope |
|
Assigning roles or policies to principals |
To authorize a user, you need to add it to a user group first and then specify the scope of authorization. It provides a limited number of condition keys and cannot meet the requirements of fine-grained permissions control. This method is suitable for small- and medium-sized enterprises. |
Identity policy |
User-policy |
|
|
You can authorize a user by attaching an identity policy to it. User-specific authorization and a variety of key conditions allow for more fine-grained permissions control. However, this model can be hard to set up. It requires a certain amount of expertise and is suitable for medium- and large-sized enterprises. |
Policies/identity policies and actions in the two authorization models are not interoperable. You are advised to use the identity policy-based authorization model. For details about system-defined permissions, see Role/Policy-based Authorization and Identity Policy-based Authorization.
For more information about IAM, see IAM Service Overview.
Role/Policy-based Authorization
ASM supports role/policy-based authorization. New IAM users do not have any permissions assigned by default. You need to first add them to one or more groups and then attach policies or roles to these groups. The users then inherit permissions from the groups and can perform specified operations on cloud services based on the permissions they have been assigned.
ASM is a project-level service deployed for specific regions. When you set Scope to Region-specific projects and select the specified projects in the specified regions , the users only have permissions for service meshes in the selected projects. If you set Scope to All resources, the users have permissions for service meshes in all region-specific projects. When accessing ASM, the users need to switch to the authorized region.
Table 2 lists all the system-defined permissions for ASM. System-defined policies in role/policy-based authorization are not interoperable with those in identity policy-based authorization.
Role/Policy Name |
Description |
Type |
Dependencies |
|---|---|---|---|
ASM FullAccess |
Administrator permissions for ASM. Users with these permissions can perform all operations on service meshes and all resources (such as Services, gateways, and grayscale release tasks) in the service meshes. |
System-defined policy |
None |
ASM ReadOnlyAccess |
Read-only permissions for ASM. Users with these permissions can only view service meshes and all resources in the service meshes. |
System-defined policy |
None |
Table 3 lists the common operations supported by system-defined permissions for ASM.
Operation |
ASM FullAccess |
ASM ReadOnlyAccess |
|---|---|---|
Creating a service mesh |
√ |
x |
Deleting a service mesh |
√ |
x |
Querying the service mesh list |
√ |
√ |
Querying the details about a service mesh |
√ |
√ |
Updating a service mesh |
√ |
x |
Upgrading a service mesh |
√ |
x |
Querying and validating the Service of a service mesh |
√ |
√ |
Querying the Service list of a service mesh |
√ |
√ |
Repairing the Service of a service mesh with just one click |
√ |
x |
Creating a service governance policy for a service mesh |
√ |
x |
Querying the service governance policy of a service mesh |
√ |
√ |
Deleting the service governance policy of a service mesh |
√ |
x |
Obtaining the namespace list |
√ |
√ |
Injecting sidecars for a namespace |
√ |
x |
Creating a grayscale release task |
√ |
x |
Deleting a grayscale release task |
√ |
x |
Querying the grayscale release task list |
√ |
√ |
Querying the details about a grayscale release task |
√ |
√ |
Updating a grayscale release task |
√ |
x |
Creating a gateway |
√ |
x |
Querying the gateway list |
√ |
√ |
Deleting a gateway |
√ |
x |
Adding a gateway route |
√ |
x |
Querying the gateway route list |
√ |
√ |
Deleting a gateway route |
√ |
x |
Creating a one-click experience task |
√ |
x |
Querying the details about a one-click experience task |
√ |
√ |
Deleting a one-click experience task |
√ |
x |
Querying the service mesh topology |
√ |
√ |
Role/Policy Dependencies of the ASM Console
Console Function |
Dependency |
Role/Policy Required |
|---|---|---|
Tracing |
APM |
|
Identity Policy-based Authorization
ASM supports identity policy-based authorization. Table 5 lists all the system-defined identity policies for ASM. System-defined policies in identity policy-based authorization are not interoperable with those in role/policy-based authorization.
Identity Policy Name |
Description |
Type |
|---|---|---|
ASMFullAccess |
Administrator permissions for ASM. Users with these permissions can perform all operations on service meshes and all resources (such as Services, gateways, and grayscale release tasks) in the service meshes. |
System-defined identity policy |
ASMReadOnlyAccess |
Read-only permissions for ASM. Users with these permissions can only view service meshes and all resources in the service meshes. |
System-defined identity policy |
Table 6 lists the common operations supported by system-defined identity policies for ASM.
Operation |
ASM FullAccess |
ASM ReadOnlyAccess |
|---|---|---|
Creating a service mesh |
√ |
x |
Deleting a service mesh |
√ |
x |
Querying the service mesh list |
√ |
√ |
Querying the details about a service mesh |
√ |
√ |
Updating a service mesh |
√ |
x |
Upgrading a service mesh |
√ |
x |
Querying and validating the Service of a service mesh |
√ |
√ |
Querying the Service list of a service mesh |
√ |
√ |
Repairing the Service of a service mesh with just one click |
√ |
x |
Creating a service governance policy for a service mesh |
√ |
x |
Querying the service governance policy of a service mesh |
√ |
√ |
Deleting the service governance policy of a service mesh |
√ |
x |
Obtaining the namespace list |
√ |
√ |
Injecting sidecars for a namespace |
√ |
x |
Creating a grayscale release task |
√ |
x |
Deleting a grayscale release task |
√ |
x |
Querying the grayscale release task list |
√ |
√ |
Querying the details about a grayscale release task |
√ |
√ |
Updating a grayscale release task |
√ |
x |
Creating a gateway |
√ |
x |
Querying the gateway list |
√ |
√ |
Deleting a gateway |
√ |
x |
Adding a gateway route |
√ |
x |
Querying the gateway route list |
√ |
√ |
Deleting a gateway route |
√ |
x |
Creating a one-click experience task |
√ |
x |
Querying the details about a one-click experience task |
√ |
√ |
Deleting a one-click experience task |
√ |
x |
Querying the service mesh topology |
√ |
√ |
Identity Policy Dependencies of the ASM Console
Console Function |
Dependency |
Identity Policy Required |
|---|---|---|
Tracing |
APM |
To enable the tracing service provided by APM 2.0, an IAM user must be granted the APMFullAccess permissions. |