All Products
Search
Document Center

AnalyticDB for MySQL:RAM authorization

Last Updated:Mar 22, 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 ADB. You can use the elements to create policies in RAM. The code (RamCode) in RAM that is used to indicate ADB is adb. You can grant permissions on ADB 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

ADB 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
adb:AllocateClusterPublicConnectionAllocateClusterPublicConnectionWrite
All Resources
*
NoneNone
adb:ApplyAdviceByIdApplyAdviceByIdWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:AttachUserENIAttachUserENIWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:BatchApplyAdviceByIdListBatchApplyAdviceByIdListWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:BindDBResourceGroupWithUserBindDBResourceGroupWithUserWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:BindDBResourcePoolWithUserBindDBResourcePoolWithUserWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:CreateAccountCreateAccountWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:CreateDBClusterCreateDBClusterWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/*
adb:DiskEncryption
None
adb:CreateDBResourceGroupCreateDBResourceGroupWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:CreateDBResourcePoolCreateDBResourcePoolWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:CreateElasticPlanCreateElasticPlanWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DeleteAccountDeleteAccountWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:DeleteDBClusterDeleteDBClusterWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:DeleteDBResourceGroupDeleteDBResourceGroupWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DeleteDBResourcePoolDeleteDBResourcePoolWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DeleteElasticPlanDeleteElasticPlanWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeAccountsDescribeAccountsRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:DescribeAdviceServiceEnabledDescribeAdviceServiceEnabledRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeAllDataSourceDescribeAllDataSourceRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:DescribeAppliedAdvicesDescribeAppliedAdvicesRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeAuditLogConfigDescribeAuditLogConfigRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeAuditLogRecordsDescribeAuditLogRecordsRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeAutoRenewAttributeDescribeAutoRenewAttributeRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:DescribeAvailableAdvicesDescribeAvailableAdvicesRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeAvailableResourceDescribeAvailableResourceRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/*
NoneNone
adb:DescribeBackupsDescribeBackupsRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeColumnsDescribeColumnsRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeComputeResourceDescribeComputeResourceRead
All Resources
*
NoneNone
adb:DescribeConnectionCountRecordsDescribeConnectionCountRecordsRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeDBClusterAccessWhiteListDescribeDBClusterAccessWhiteListRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:DescribeDBClusterAttributeDescribeDBClusterAttributeRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:DescribeDBClusterHealthStatusDescribeDBClusterHealthStatusRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeDBClusterNetInfoDescribeDBClusterNetInfoRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:DescribeDBClusterPerformanceDescribeDBClusterPerformanceList
DBClusterLakeVersion
acs:adb:{#Region}:{#AccountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeDBClusterResourcePoolPerformanceDescribeDBClusterResourcePoolPerformanceRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeDBClustersDescribeDBClustersRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/*
NoneNone
adb:DescribeDBResourceGroupDescribeDBResourceGroupRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:DescribeDBResourcePoolDescribeDBResourcePoolRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeDiagnosisDimensionsDescribeDiagnosisDimensionsRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeDiagnosisMonitorPerformanceDescribeDiagnosisMonitorPerformanceRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeDiagnosisRecordsDescribeDiagnosisRecordsRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeDiagnosisSQLInfoDescribeDiagnosisSQLInfoRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeDiagnosisTasksDescribeDiagnosisTasksRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeDownloadRecordsDescribeDownloadRecordsRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeEIURangeDescribeEIURangeRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:DescribeElasticDailyPlanDescribeElasticDailyPlanRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeElasticPlanDescribeElasticPlanRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeInclinedTablesDescribeInclinedTablesRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeLoadTasksRecordsDescribeLoadTasksRecordsRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeMaintenanceActionDescribeMaintenanceActionRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/*
NoneNone
adb:DescribePatternPerformanceDescribePatternPerformanceRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeProcessListDescribeProcessListRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeResubmitConfigDescribeResubmitConfigRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeSQAConfigDescribeSQAConfigRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeSQLPatternsDescribeSQLPatternsRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeSQLPlanDescribeSQLPlanRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeSQLPlanTaskDescribeSQLPlanTaskRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeSchemasDescribeSchemasRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:DescribeSlowLogRecordsDescribeSlowLogRecordsRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:DescribeSlowLogTrendDescribeSlowLogTrendRead
All Resources
*
NoneNone
adb:DescribeSqlPatternDescribeSqlPatternRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeTableAccessCountDescribeTableAccessCountRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeTablePartitionDiagnoseDescribeTablePartitionDiagnoseRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeTableStatisticsDescribeTableStatisticsRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeTablesDescribeTablesRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DescribeTaskInfoDescribeTaskInfoRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DetachUserENIDetachUserENIWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DisableAdviceServiceDisableAdviceServiceWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:DownloadDiagnosisRecordsDownloadDiagnosisRecordsWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:EnableAdviceServiceEnableAdviceServiceWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:GrantOperatorPermissionGrantOperatorPermissionWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:ListTagResourcesListTagResourcesRead
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:MigrateDBClusterMigrateDBClusterWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:ModifyAuditLogConfigModifyAuditLogConfigWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:ModifyAutoRenewAttributeModifyAutoRenewAttributeWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:ModifyBackupPolicyModifyBackupPolicyWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:ModifyClusterConnectionStringModifyClusterConnectionStringWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:ModifyDBClusterModifyDBClusterWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:ModifyDBClusterAccessWhiteListModifyDBClusterAccessWhiteListWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:ModifyDBClusterDescriptionModifyDBClusterDescriptionWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:ModifyDBClusterMaintainTimeModifyDBClusterMaintainTimeWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:ModifyDBClusterPayTypeModifyDBClusterPayTypeWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:ModifyDBClusterResourceGroupModifyDBClusterResourceGroupWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:ModifyDBResourceGroupModifyDBResourceGroupWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:ModifyDBResourcePoolModifyDBResourcePoolWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:ModifyElasticPlanModifyElasticPlanWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:ModifyLogBackupPolicyModifyLogBackupPolicyWrite
All Resources
*
NoneNone
adb:ModifyMaintenanceActionModifyMaintenanceActionWrite
All Resources
*
NoneNone
adb:ModifyResubmitConfigModifyResubmitConfigWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:ModifySQAConfigModifySQAConfigWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
NoneNone
adb:ResetAccountPasswordResetAccountPasswordWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:TagResourcesTagResourcesWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:UnbindDBResourceGroupWithUserUnbindDBResourceGroupWithUserWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone
adb:UntagResourcesUntagResourcesWrite
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}
NoneNone

Resource

ADB 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
DBClusteracs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}
DBClusterLakeVersionacs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}

Condition

ADB defines the values that you can use in the Condition element of a policy statement. The following table describes the values. The following table describes the service-specific condition keys. The common condition keys that are defined by Alibaba Cloud also apply to ADB. For more information about the common condition keys, see Generic Condition Keyword.
The data type determines the conditional operators that you can use to compare the value in a request with the value in a policy statement. You must use conditional operators that are supported by the data type. Otherwise, you cannot compare the value in the request with the value in the policy statement. In this case, the authorization is invalid. For more information about the conditional operators that are supported by each data type, see Policy elements.
Condition keyDescriptionData type
adb:DiskEncryptionString

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: