All Products
Search
Document Center

Chat App Message Service:RAM authorization

Last Updated:Nov 18, 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 ChatAppMessageService. You can use the elements to create policies in RAM. The code (RamCode) in RAM that is used to indicate ChatAppMessageService is [{"popCode":"cams","ramCodes":["cams"]},{"popCode":"CamsDomestic","ramCodes":["cams"]}]. You can grant permissions on ChatAppMessageService at the OPERATION.

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

ChatAppMessageService 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
cams:UpdatePhoneMessageQrdlUpdatePhoneMessageQrdlget
All Resources
*
NoneNone
cams:GetPhoneNumberVerificationStatusGetPhoneNumberVerificationStatusget
All Resources
*
NoneNone
cams:GetFlowGetFlowget
All Resources
*
NoneNone
cams:ChatappPhoneNumberRegisterChatappPhoneNumberRegisterupdate
All Resources
*
NoneNone
cams:QueryChatappPhoneNumbersQueryChatappPhoneNumbersget
All Resources
*
NoneNone
cams:BeeBotAssociateBeeBotAssociateupdate
All Resources
*
NoneNone
cams:ModifyFlowModifyFlowget
All Resources
*
NoneNone
cams:PublishFlowPublishFlowget
All Resources
*
NoneNone
cams:UpdatePhoneWebhookUpdatePhoneWebhookupdate
All Resources
*
NoneNone
cams:ChatappBindWabaChatappBindWabaupdate
All Resources
*
NoneNone
cams:ChatappEmbedSignUpChatappEmbedSignUpupdate
All Resources
*
NoneNone
cams:QueryWabaBusinessInfoQueryWabaBusinessInfoget
All Resources
*
NoneNone
cams:ModifyChatappTemplateModifyChatappTemplateupdate
All Resources
*
NoneNone
cams:ChatappPhoneNumberDeregisterChatappPhoneNumberDeregisterupdate
All Resources
*
NoneNone
cams:GetChatappTemplateMetricGetChatappTemplateMetricget
All Resources
*
NoneNone
cams:ListProductCatalogListProductCatalog
All Resources
*
NoneNone
cams:ModifyPhoneBusinessProfileModifyPhoneBusinessProfileupdate
All Resources
*
NoneNone
cams:UpdateFlowJSONAssetUpdateFlowJSONAssetget
All Resources
*
NoneNone
cams:GetFlowPreviewUrlGetFlowPreviewUrlget
All Resources
*
NoneNone
cams:ListFlowListFlowget
All Resources
*
NoneNone
cams:GetFlowJSONAssestGetFlowJSONAssestget
All Resources
*
NoneNone
cams:GetChatappPhoneNumberMetricGetChatappPhoneNumberMetricget
All Resources
*
NoneNone
cams:DeleteFlowDeleteFlowget
All Resources
*
NoneNone
cams:ChatappMigrationVerifiedChatappMigrationVerifiedupdate
All Resources
*
NoneNone
cams:ListPhoneMessageQrdlListPhoneMessageQrdlget
All Resources
*
NoneNone
cams:GetPermissionByCodeGetPermissionByCodeget
All Resources
*
NoneNone
cams:DeprecateFlowDeprecateFlowget
All Resources
*
NoneNone
cams:GetWhatsappConnectionCatalogGetWhatsappConnectionCatalog
All Resources
*
NoneNone
cams:CreateFlowCreateFlowget
All Resources
*
NoneNone
cams:IsvGetAppIdIsvGetAppIdget
All Resources
*
NoneNone
cams:CreatePhoneMessageQrdlCreatePhoneMessageQrdlget
All Resources
*
NoneNone
cams:BeeBotChatBeeBotChatupdate
All Resources
*
NoneNone
cams:AddChatappPhoneNumberAddChatappPhoneNumberupdate
All Resources
*
NoneNone
cams:ListProductListProduct
All Resources
*
NoneNone
cams:GetPhoneEncryptionPublicKeyGetPhoneEncryptionPublicKeyget
All Resources
*
NoneNone
cams:ChatappVerifyAndRegisterChatappVerifyAndRegisterupdate
All Resources
*
NoneNone
cams:DeletePhoneMessageQrdlDeletePhoneMessageQrdlget
All Resources
*
NoneNone
cams:CreateChatappMigrationInitiateCreateChatappMigrationInitiateupdate
All Resources
*
NoneNone
cams:SubmitIsvCustomerTermsSubmitIsvCustomerTermsupdate
All Resources
*
NoneNone
cams:CreateChatappTemplateCreateChatappTemplatecreate
All Resources
*
NoneNone
cams:ListChatappTemplateListChatappTemplatelist
All Resources
*
NoneNone
cams:GetChatappTemplateDetailGetChatappTemplateDetailget
All Resources
*
NoneNone
cams:QueryChatappBindWabaQueryChatappBindWabaget
All Resources
*
NoneNone
cams:SendChatappMessageSendChatappMessagecreate
All Resources
*
NoneNone
cams:UpdatePhoneEncryptionPublicKeyUpdatePhoneEncryptionPublicKeyget
All Resources
*
NoneNone
cams:GetChatappVerifyCodeGetChatappVerifyCodeget
All Resources
*
NoneNone
cams:DeleteChatappTemplateDeleteChatappTemplatedelete
All Resources
*
NoneNone
cams:QueryPhoneBusinessProfileQueryPhoneBusinessProfileget
All Resources
*
NoneNone
cams:UpdateCommerceSettingUpdateCommerceSettingupdate
All Resources
*
NoneNone
cams:ChatappMigrationRegisterChatappMigrationRegisterupdate
All Resources
*
NoneNone
cams:GetChatappUploadAuthorizationGetChatappUploadAuthorizationget
All Resources
*
NoneNone
cams:SendChatappMassMessageSendChatappMassMessagecreate
All Resources
*
NoneNone
cams:ChatappSyncPhoneNumberChatappSyncPhoneNumberupdate
All Resources
*
NoneNone
cams:GetMigrationVerifyCodeGetMigrationVerifyCodeget
All Resources
*
NoneNone
cams:GetCommerceSettingGetCommerceSettingupdate
All Resources
*
NoneNone
cams:EnableWhatsappROIMetricEnableWhatsappROIMetricget
All Resources
*
NoneNone
cams:UpdateAccountWebhookUpdateAccountWebhookupdate
All Resources
*
NoneNone

Resource

In ChatAppMessageService, you cannot specify an ARN in the Resource element in a policy statement. If you want to authorize a RAM user or a RAM role to access ChatAppMessageService, you cannot specify an ARN in the "Resource": "*".

Condition

ChatAppMessageService 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: