All Products
Search
Document Center

Alibaba Cloud Service Mesh:RAM authorization

Last Updated:Aug 01, 2024
Resource Access Management (RAM) is a service provided by Alibaba Cloud to manage user identities and resource access permissions. You can use RAM to prevent RAM users from sharing the AccessKey pairs of your Alibaba Cloud account. You can also use RAM to grant minimum permissions to RAM users. RAM uses policies to define permissions.
This topic describes the elements, such as Action, Resource, and Condition, which are defined by ServiceMesh. You can use the elements to create policies in RAM. The code (RamCode) in RAM that is used to indicate ServiceMesh is servicemesh. You can grant permissions on ServiceMesh at the RESOURCE.

General structure of a policy

Policies can be stored as JSON files. The following code provides an example on the general structure of a policy:
{
  "Version": "1",
  "Statement": [
    {
      "Effect": "<Effect>",
      "Action": "<Action>",
      "Resource": "<Resource>",
      "Condition": {
        "<Condition_operator>": {
          "<Condition_key>": [
            "<Condition_value>"
          ]
        }
      }
    }
  ]
}
The following list describes the fields in the policy:
  • Effect: specifies the authorization effect. Valid values: Allow, Deny.
  • Action: specifies one or more API operations that are allowed or denied. For more information, see the Action section of this topic.
  • Resource: specifies one or more resources to which the policy applies. You can use an Alibaba Cloud Resource Name (ARN) to specify a resource. For more information, see the Resource section of this topic.
  • Condition: specifies one or more conditions that are required for the policy to take effect. This is an optional field. For more information, see the Condition section of this topic.
    • Condition_operator: specifies the conditional operators. Different types of conditions support different conditional operators. For more information, see Policy elements.
    • Condition_key: specifies the condition keys.
    • Condition_value: specifies the condition values.

Action

ServiceMesh defines the values that you can use in the Action element of a policy statement. The following table describes the values.
  • Operation: the value that you can use in the Action element to specify the operation on a resource.
  • API operation: the API operation that you can call to perform the operation.
  • Access level: the access level of each operation. The levels are read, write, and list.
  • Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
    • The required resource types are displayed in bold characters.
    • If the permissions cannot be granted at the resource level, All Resources is used in the Resource type column of the operation.
  • Condition key: the condition keys that are defined by the Alibaba Cloud service. The Condition key column does not list the common condition keys that are defined by Alibaba Cloud. For more information about the common condition keys, see Generic Condition Keyword.
  • Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
ActionsAPI operationAccess levelResource typeCondition keyAssociated operation
servicemesh:DescribeCrTemplatesDescribeCrTemplatesget
All Resources
*
NoneNone
servicemesh:DescribeGuestClusterNamespacesDescribeGuestClusterNamespacesget
All Resources
*
NoneNone
servicemesh:UpgradeMeshEditionPartiallyUpgradeMeshEditionPartiallyupdate
All Resources
*
NoneNone
servicemesh:UpdateControlPlaneLogConfigUpdateControlPlaneLogConfig
All Resources
*
NoneNone
servicemesh:DeleteSwimLaneGroupDeleteSwimLaneGroupdelete
All Resources
*
NoneNone
servicemesh:ModifyServiceMeshNameModifyServiceMeshNameupdate
All Resources
*
NoneNone
servicemesh:CreateSwimLaneGroupCreateSwimLaneGroupcreate
All Resources
*
NoneNone
servicemesh:UpdateASMGatewayImportedServicesUpdateASMGatewayImportedServicesupdate
All Resources
*
NoneNone
servicemesh:TagResourcesTagResources
All Resources
*
NoneNone
servicemesh:UntagResourcesUntagResources
All Resources
*
NoneNone
servicemesh:ListWaypointsListWaypointsnone
All Resources
*
NoneNone
servicemesh:CreateASMGatewayCreateASMGatewaycreate
All Resources
*
NoneNone
servicemesh:DeleteGatewayRouteDeleteGatewayRoutedelete
All Resources
*
NoneNone
servicemesh:GetGrafanaDashboardUrlGetGrafanaDashboardUrlget
All Resources
*
NoneNone
servicemesh:UpdateASMNamespaceFromGuestClusterUpdateASMNamespaceFromGuestClusterupdate
All Resources
*
NoneNone
servicemesh:DescribeIstioGatewayRouteDetailDescribeIstioGatewayRouteDetailget
All Resources
*
NoneNone
servicemesh:DescribeGatewaySecretDetailsDescribeGatewaySecretDetailsget
All Resources
*
NoneNone
servicemesh:DescribeUserPermissionsDescribeUserPermissionsget
All Resources
*
NoneNone
servicemesh:DescribeNamespaceScopeSidecarConfigDescribeNamespaceScopeSidecarConfigget
All Resources
*
NoneNone
servicemesh:UpdateMeshCRAggregationUpdateMeshCRAggregationupdate
All Resources
*
NoneNone
servicemesh:DeleteServiceMeshDeleteServiceMeshdelete
All Resources
*
NoneNone
servicemesh:DescribeServiceMeshesDescribeServiceMeshesget
All Resources
*
NoneNone
servicemesh:GetSwimLaneGroupListGetSwimLaneGroupListget
All Resources
*
NoneNone
servicemesh:DescribeNodesInstanceTypeDescribeNodesInstanceTypeget
All Resources
*
NoneNone
servicemesh:CreateIstioGatewayRoutesCreateIstioGatewayRoutescreate
All Resources
*
NoneNone
servicemesh:DescribeClustersInServiceMeshDescribeClustersInServiceMeshget
All Resources
*
NoneNone
servicemesh:DescribeImportedServicesDetailDescribeImportedServicesDetailget
All Resources
*
NoneNone
servicemesh:UpdateWaypointUpdateWaypointnone
All Resources
*
NoneNone
servicemesh:DeleteGatewaySecretDeleteGatewaySecretdelete
All Resources
*
NoneNone
servicemesh:GetSwimLaneListGetSwimLaneListget
All Resources
*
NoneNone
servicemesh:DescribeIstioGatewayDomainsDescribeIstioGatewayDomainsget
All Resources
*
NoneNone
servicemesh:RemoveClusterFromServiceMeshRemoveClusterFromServiceMeshdelete
All Resources
*
NoneNone
servicemesh:DescribeVersionsDescribeVersionsget
All Resources
*
NoneNone
servicemesh:DescribeServiceMeshLogsDescribeServiceMeshLogsget
All Resources
*
NoneNone
servicemesh:DescribeClusterGrafanaDescribeClusterGrafanaget
All Resources
*
NoneNone
servicemesh:DeleteIstioGatewayDomainsDeleteIstioGatewayDomainsdelete
All Resources
*
NoneNone
servicemesh:UpdateASMGatewayUpdateASMGatewayupdate
All Resources
*
NoneNone
servicemesh:ModifyApiServerEipResourceModifyApiServerEipResourceupdate
All Resources
*
NoneNone
servicemesh:DescribeServiceMeshProxyStatusDescribeServiceMeshProxyStatusget
All Resources
*
NoneNone
servicemesh:UpdateIstioRouteAdditionalStatusUpdateIstioRouteAdditionalStatusupdate
All Resources
*
NoneNone
servicemesh:DescribeServiceMeshKubeconfigDescribeServiceMeshKubeconfigget
All Resources
*
NoneNone
servicemesh:DescribeVpcsDescribeVpcsget
All Resources
*
NoneNone
servicemesh:UpdateSwimLaneUpdateSwimLaneupdate
All Resources
*
NoneNone
servicemesh:DescribeReusableSlbDescribeReusableSlbget
All Resources
*
NoneNone
servicemesh:GetRegisteredServiceEndpointsGetRegisteredServiceEndpointsget
All Resources
*
NoneNone
servicemesh:DescribeServiceMeshAdditionalStatusDescribeServiceMeshAdditionalStatusget
All Resources
*
NoneNone
servicemesh:ListServiceAccountsListServiceAccountsnone
All Resources
*
NoneNone
servicemesh:GetRegisteredServiceNamespacesGetRegisteredServiceNamespacesget
All Resources
*
NoneNone
servicemesh:DescribeVSwitchesDescribeVSwitchesget
All Resources
*
NoneNone
servicemesh:RevokeKubeconfigRevokeKubeconfigupdate
All Resources
*
NoneNone
servicemesh:CreateWaypointCreateWaypointnone
All Resources
*
NoneNone
servicemesh:UpdateMeshFeatureUpdateMeshFeatureupdate
All Resources
*
NoneNone
servicemesh:UpdateIstioGatewayRoutesUpdateIstioGatewayRoutesupdate
All Resources
*
NoneNone
servicemesh:DescribeServiceMeshDetailDescribeServiceMeshDetailget
All Resources
*
NoneNone
servicemesh:DescribeServiceMeshUpgradeStatusDescribeServiceMeshUpgradeStatusget
All Resources
*
NoneNone
servicemesh:UpgradeMeshVersionUpgradeMeshVersionupdate
All Resources
*
NoneNone
servicemesh:DescribeEipResourcesDescribeEipResourcesget
All Resources
*
NoneNone
servicemesh:GrantUserPermissionsGrantUserPermissionsget
All Resources
*
NoneNone
servicemesh:DescribeUpgradeVersionDescribeUpgradeVersionget
All Resources
*
NoneNone
servicemesh:GetSwimLaneDetailGetSwimLaneDetailget
All Resources
*
NoneNone
servicemesh:DeleteSwimLaneDeleteSwimLanedelete
All Resources
*
NoneNone
servicemesh:GetDeploymentBySelectorGetDeploymentBySelector
All Resources
*
NoneNone
servicemesh:DeleteWaypointDeleteWaypointnone
All Resources
*
NoneNone
servicemesh:UpdateSwimLaneGroupUpdateSwimLaneGroupupdate
All Resources
*
NoneNone
servicemesh:CreateIstioGatewayDomainsCreateIstioGatewayDomainscreate
All Resources
*
NoneNone
servicemesh:CreateServiceMeshCreateServiceMeshcreate
All Resources
*
NoneNone
servicemesh:GetCaCertGetCaCertget
All Resources
*
NoneNone
servicemesh:DescribeUsersWithPermissionsDescribeUsersWithPermissionsget
All Resources
*
NoneNone
servicemesh:UpdateNamespaceScopeSidecarConfigUpdateNamespaceScopeSidecarConfigupdate
All Resources
*
NoneNone
servicemesh:DescribeMetadataDescribeMetadataget
All Resources
*
NoneNone
servicemesh:DescribeGuestClusterAccessLogDashboardsDescribeGuestClusterAccessLogDashboardsget
All Resources
*
NoneNone
servicemesh:DescribeASMGatewayImportedServicesDescribeASMGatewayImportedServicesget
All Resources
*
NoneNone
servicemesh:ReActivateAuditReActivateAuditupdate
All Resources
*
NoneNone
servicemesh:DescribeCensDescribeCensget
All Resources
*
NoneNone
servicemesh:DescribeCCMVersionDescribeCCMVersionget
All Resources
*
NoneNone
servicemesh:DescribeIstioGatewayRoutesDescribeIstioGatewayRoutesget
All Resources
*
NoneNone
servicemesh:DescribeGuestClusterPodsDescribeGuestClusterPodsget
All Resources
*
NoneNone
servicemesh:DescribeClusterPrometheusDescribeClusterPrometheusget
All Resources
*
NoneNone
servicemesh:UpdateIstioInjectionConfigUpdateIstioInjectionConfigupdate
All Resources
*
NoneNone
servicemesh:CreateGatewaySecretCreateGatewaySecretcreate
All Resources
*
NoneNone
servicemesh:DescribeServiceMeshClustersDescribeServiceMeshClustersget
All Resources
*
NoneNone
servicemesh:AddClusterIntoServiceMeshAddClusterIntoServiceMeshcreate
All Resources
*
NoneNone
servicemesh:CreateSwimLaneCreateSwimLanecreate
All Resources
*
NoneNone
servicemesh:ListTagResourcesListTagResources
All Resources
*
NoneNone

Resource

ServiceMesh defines the values that you can use in the Resource. You can attach the policy to a RAM user or a RAM role so that the RAM user or the RAM role can perform a specific operation on a specific resource. The ARN is the unique identifier of the resource on Alibaba Cloud. Take note of the following items:
  • {#}indicates a variable. {#} must be replaced with an actual value. For example, {#ramcode} must be replaced with the actual code of an Alibaba Cloud service in RAM.
  • An asterisk (*) is used as a wildcard. Examples:
    • {#resourceType} is set to *, all resources are specified.
    • {#regionId} is set to *, all regions are specified.
    • {#accountId} is set to *, all Alibaba Cloud accounts are specified.
Resource typeARN
No data

Condition

ServiceMesh does not define service-specific condition keys. For more information about common condition keys that are defined by Alibaba Cloud, see Generic Condition Keyword.

What to do next

You can create a custom policy and attach the policy to a RAM user, RAM user group, or RAM role. For more information, see the following topics: