All Products
Search
Document Center

Compute Nest:RAM authorization

Last Updated:Oct 23, 2025

Resource Access Management (RAM) is a service provided by Alibaba Cloud to manage user identities and resource access permissions. Using RAM helps you avoid sharing your Alibaba Cloud account keys with other users and allows you to grant users the least privilege access. RAM uses permission policies to define authorizations. This topic describes the general structure of a RAM policy, and the policy statement elements (Action, Resource, and Condition) defined by Compute Nest for RAM permission policies. The RAM code (RamCode) for Compute Nest is computenest,computenestsupplier , and the supported authorization granularity is RESOURCE .

General structure of a policy

Permission policies support JSON format with the following general structure:

{
  "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:

  • Version: Specifies the policy version number. It is fixed at 1.

  • Statement:

    • Effect: Specifies the authorization result. Valid values: Allow and Deny.

    • Action: Specifies one or more operations that are allowed or denied.

    • Resource: Specifies the specific objects affected by the operations. You can use Alibaba Cloud Resource Names (ARNs) to describe specific resources.

    • Condition: Specifies the conditions for the authorization to take effect. This field is optional.

      • Condition operator: Specifies the conditional operators. Different types of conditions support different conditional operators.

      • Condition_key: Specifies the condition keys.

      • Condition_value: Specifies the condition values.

Action

The following table lists the actions defined by Compute Nest. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that support authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding ARN in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys that are applicable across all RAM-integrated services. For more information, see Common condition keys.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

API

Access level

Resource type

Condition key

Dependent action

computenestsupplier:GetServiceRegistration GetServiceRegistration get

*ServiceRegistration

acs:computenestsupplier:{#regionId}:{#accountId}:serviceregistration/{#registrationId}

None None
computenestsupplier:CreateSupplierRegistration CreateSupplierRegistration create

*All Resource

*

None None
computenestsupplier:CreateService CreateService create

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/*

None None
computenestsupplier:CreateOpsNotice CreateOpsNotice create

*OpsNotice

acs:computenestsupplier:{#regionId}:{#accountId}:opsnotice/*

None None
computenestsupplier:ListArtifactVersions ListArtifactVersions list

*Artifact

acs:computenestsupplier:*:{#accountId}:artifact/{#ArtifactId}

None None
computenestsupplier:ListServiceInstanceUpgradeHistory ListServiceInstanceUpgradeHistory get

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#serviceinstanceId}

None None
computenestsupplier:ListAcrImageRepositories ListAcrImageRepositories get

*All Resource

*

None None
computenestsupplier:ListServiceInstanceDeployDetails ListServiceInstanceDeployDetails list

*All Resource

*

None None
computenestsupplier:ListServiceInstanceLogs ListServiceInstanceLogs list

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#serviceinstanceId}

None None
computenestsupplier:UpdateServiceTestCase UpdateServiceTestCase update

*ServiceTestCase

acs:computenestsupplier:{#regionId}:{#accountId}:servicetestcase/{#TestCaseId}

None None
computenestsupplier:ListServiceInstanceResources ListServiceInstanceResources list

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#serviceinstanceId}

None None
computenestsupplier:CreateServiceUsage CreateServiceUsage create

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

None None
computenestsupplier:UpgradeServiceInstance UpgradeServiceInstance update

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#ServiceInstanceId}

None None
computenestsupplier:LaunchService LaunchService update

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

None None
computenestsupplier:GetServiceTemplateCriterionIssues GetServiceTemplateCriterionIssues get

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

None None
computenestsupplier:ListArtifactBuildLogs ListArtifactBuildLogs list

*All Resource

*

None None
computenestsupplier:RestartServiceInstance RestartServiceInstance update

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#ServiceInstanceId}

None None
computenestsupplier:ListAcrImageTags ListAcrImageTags get

*All Resource

*

None None
computenestsupplier:ModifyServiceInstanceResources ModifyServiceInstanceResources update

*ServiceInstance

acs:computenestsupplier:*:{#accountId}:serviceinstance/{#serviceinstanceId}

None None
computenestsupplier:GetNetworkAvailableZones GetNetworkAvailableZones get

*All Resource

*

None None
computenestsupplier:DeleteAcrImageTags DeleteAcrImageTags delete

*All Resource

*

None None
computenestsupplier:ContinueDeployServiceInstance ContinueDeployServiceInstance update

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#serviceinstanceId}

None None
computenestsupplier:GetServiceProvisions GetServiceProvisions get

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#serviceId}

None None
computenestsupplier:CreateServiceTestCase CreateServiceTestCase create

*ServiceTestCase

acs:computenestsupplier:{#regionId}:{#accountId}:servicetestcase/*

None None
computenestsupplier:DeleteService DeleteService delete

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

None None
computenestsupplier:RollbackServiceInstance RollbackServiceInstance update

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#ServiceInstanceId}

None None
computenestsupplier:AddServiceSharedAccounts AddServiceSharedAccounts create

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#serviceId}

None None
computenestsupplier:ListSupplierRegistrations ListSupplierRegistrations list

*All Resource

*

None None
computenestsupplier:ListServiceTestTaskLogs ListServiceTestTaskLogs list

*All Resource

*

None None
computenestsupplier:PushMeteringData PushMeteringData none

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#ServiceInstanceId}

None None
computenestsupplier:DeleteAcrImageRepositories DeleteAcrImageRepositories delete

*All Resource

*

None None
computenestsupplier:ListTagValues ListTagValues none

*All Resource

*

None None
computenestsupplier:ListServices ListServices list

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/*

None None
computenestsupplier:RegisterService RegisterService update

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

*ServiceRegistration

acs:computenestsupplier:{#regionId}:{#accountId}:serviceregistration/*

None None
computenestsupplier:DeleteServiceTestCase DeleteServiceTestCase delete

*ServiceTestCase

acs:computenestsupplier:{#regionId}:{#accountId}:servicetestcase/{#TestCaseId}

None None
computenestsupplier:GetServiceTemplateParameterConstraints GetServiceTemplateParameterConstraints get

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#serviceId}

None None
computenestsupplier:ListOpsNotices ListOpsNotices get

*OpsNotice

acs:computenestsupplier:{#regionId}:{#accountId}:opsnotice/*

None None
computenestsupplier:UpdateSharedAccountPermission UpdateSharedAccountPermission update

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

None None
computenestsupplier:WithdrawService WithdrawService update

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

None None
computenestsupplier:UpdateArtifact UpdateArtifact update

*Artifact

acs:computenestsupplier:{#regionId}:{#accountId}:artifact/{#ArtifactId}

None None
computenestsupplier:RemoveServiceSharedAccounts RemoveServiceSharedAccounts delete

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#serviceId}

None None
computenestsupplier:ListTagKeys ListTagKeys none

*All Resource

*

None None
computenestsupplier:ListArtifacts ListArtifacts list

*Artifact

acs:computenestsupplier:*:{#accountId}:artifact/*

None None
computenestsupplier:ListServiceInstanceBill ListServiceInstanceBill get

ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#ServiceInstanceId}

None None
computenestsupplier:ListServiceUsages ListServiceUsages list

*All Resource

*

None None
computenestsupplier:ListServiceBuildLogs ListServiceBuildLogs list

*All Resource

*

None None
computenestsupplier:ApproveServiceUsage ApproveServiceUsage update

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

None None
computenestsupplier:CreateServiceInstance CreateServiceInstance create

*All Resource

*

None None
computenestsupplier:ListServiceRegistrations ListServiceRegistrations list

*ServiceRegistration

acs:computenestsupplier:{#regionId}:{#accountId}:serviceregistration/*

None None
computenestsupplier:GenerateDefaultServiceTestConfig GenerateDefaultServiceTestConfig get

*Service

acs:computenestsupplier:*:{#accountId}:service/{#ServiceId}

None None
computenestsupplier:UpdateSupplierInformation UpdateSupplierInformation update

*SupplierInfo

acs:computenestsupplier:{#regionId}:{#accountId}:supplierinfo/*

None None
computenestsupplier:GetArtifactRepositoryCredentials GetArtifactRepositoryCredentials none

*All Resource

*

None None
computenestsupplier:GetService GetService get

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

None None
computenestsupplier:ListServiceTestTasks ListServiceTestTasks list

*ServiceTestTask

acs:computenestsupplier:{#regionId}:{#accountId}:servicetesttask/*

None None
computenestsupplier:ListServiceSharedAccounts ListServiceSharedAccounts list

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#serviceId}

None None
computenestsupplier:GetArtifact GetArtifact get

*Artifact

acs:computenestsupplier:*:{#accountId}:artifact/{#ArtifactId}

None None
computenestsupplier:DeployServiceInstance DeployServiceInstance update

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#ServiceInstanceId}

None None
computenestsupplier:DeleteServiceInstances DeleteServiceInstances delete

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#ServiceInstanceId}

None None
computenestsupplier:StartServiceInstance StartServiceInstance update

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#ServiceInstanceId}

None None
computenestsupplier:CreateArtifact CreateArtifact create

*Artifact

acs:computenestsupplier:{#regionId}:{#accountId}:artifact/{#ArtifactId}

None None
computenestsupplier:CancelServiceRegistration CancelServiceRegistration delete

*ServiceRegistration

acs:computenestsupplier:{#regionId}:{#accountId}:serviceregistration/{#ServiceRegistrationId}

None None
computenestsupplier:GetSupplierInformation GetSupplierInformation get

*SupplierInfo

acs:computenestsupplier:{#regionId}:{#accountId}:supplierinfo/*

None None
computenestsupplier:UpdateServiceInstanceSpec UpdateServiceInstanceSpec update

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#ServiceInstanceId}

None None
computenestsupplier:UpdateService UpdateService update

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

None None
computenestsupplier:CreateServiceTestTask CreateServiceTestTask create

*ServiceTestTask

acs:computenestsupplier:{#regionId}:{#accountId}:servicetesttask/*

None None
computenestsupplier:ListTagResources ListTagResources list

*All Resource

*

None None
computenestsupplier:ListArtifactRisks ListArtifactRisks list

*Artifact

acs:computenestsupplier:*:{#accountId}:artifact/{#ArtifactId}

None None
computenestsupplier:GetServiceTestTask GetServiceTestTask list

*All Resource

*

None None
computenestsupplier:ReleaseArtifact ReleaseArtifact update

*Artifact

acs:computenestsupplier:{#regionId}:{#accountId}:artifact/{#ArtifactId}

None None
computenestsupplier:DeleteArtifact DeleteArtifact delete

*Artifact

acs:computenestsupplier:{#regionId}:{#accountId}:artifact/{#ArtifactId}

None None
computenestsupplier:TagResources TagResources update

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#AccountId}:serviceinstance/{#ServiceInstanceId}

*Artifact

acs:computenestsupplier:{#regionId}:{#AccountId}:artifact/{#ArtifactId}

None None
computenestsupplier:GetServiceEstimateCost GetServiceEstimateCost none

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

None None
computenestsupplier:ListResellers ListResellers list

*SupplierInfo

acs:computenestsupplier:{#regionId}:{#accountId}:supplierinfo/*

None None
computenestsupplier:UnTagResources UnTagResources update

*All Resource

*

None None
computenestsupplier:GetOpsNotice GetOpsNotice get

*All Resource

*

None None
computenestsupplier:ListServiceTestCases ListServiceTestCases get

*ServiceTestCase

acs:computenestsupplier:{#regionId}:{#accountId}:servicetestcase/*

None None
computenestsupplier:PreLaunchService PreLaunchService update

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}

None None
computenestsupplier:GetServiceInstance GetServiceInstance get

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#ServiceInstanceId}

None None
computenestsupplier:UpdateServiceInstanceAttribute UpdateServiceInstanceAttribute update

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#serviceinstanceId}

None None
computenestsupplier:GetUploadCredentials GetUploadCredentials none

*All Resource

*

None None
computenestsupplier:GenerateServicePolicy GenerateServicePolicy get

*Service

acs:computenestsupplier:{#regionId}:{#accountId}:service/{#serviceId}

None None
computenestsupplier:StopServiceInstance StopServiceInstance update

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#ServiceInstanceId}

None None
computenestsupplier:RejectServiceUsage RejectServiceUsage update

*Service

acs:computenestsupplier:*:{#accountId}:service/{#serviceId}

None None
computenestsupplier:ListServiceInstances ListServiceInstances list

*ServiceInstance

acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/*

None None

Resource

The following table lists the resources defined by Compute Nest. Specify them in the Resource element of RAM policy statements to grant permissions for specific operations. They are uniquely identified by ARNs. Format: acs:{#ramcode}:{#regionId}:{#accountId}:{#resourceType}:

  • acs: The initialism of Alibaba Cloud service, which indicates the public cloud of Alibaba Cloud.

  • {#ramcode}: The code used in RAM to indicate an Alibaba Cloud service.

  • {#regionId}: The region ID. If the resource covers all regions, set it to an asterisk (*).

  • {#accountId}: The ID of the Alibaba Cloud account. If the resource covers all Alibaba Cloud accounts, set it to an asterisk (*).

  • {#resourceType}: The service-defined resource identifier. It supports a hierarchical structure, which is similar to a file path. If the statement covers global resources, set it to an asterisk (*).

Resource type

ARN

ServiceRegistration
  • acs:computenestsupplier:{#regionId}:{#accountId}:serviceregistration/{#registrationId}
  • acs:computenestsupplier:{#regionId}:{#accountId}:serviceregistration/*
  • acs:computenestsupplier:{#regionId}:{#accountId}:serviceregistration/{#ServiceRegistrationId}
Service
  • acs:computenestsupplier:{#regionId}:{#accountId}:service/*
  • acs:computenestsupplier:{#regionId}:{#accountId}:service/{#ServiceId}
  • acs:computenest:{#regionId}:{#accountId}:service/{#ServiceId}
  • acs:computenestsupplier:*:{#accountId}:service/{#ServiceId}
OpsNotice
  • acs:computenestsupplier:{#regionId}:{#accountId}:opsnotice/*
  • acs:computenestsupplier:{#regionId}:{#accountId}:opsnotice/{#OpsNoticeId}
Artifact
  • acs:computenestsupplier:*:{#accountId}:artifact/{#ArtifactId}
  • acs:computenestsupplier:{#regionId}:{#accountId}:artifact/*
  • acs:computenest::{#accountId}:artifact/{#ArtifactId}
  • acs:computenestsupplier:{#regionId}:{#accountId}:artifact/{#ArtifactId}
  • acs:computenestsupplier:*:{#accountId}:artifact/*
ServiceInstance
  • acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/{#serviceinstanceId}
  • acs:computenestsupplier:*:{#accountId}:serviceinstance/{#serviceinstanceId}
  • acs:computenestsupplier:{#regionId}:{#accountId}:serviceinstance/*
ServiceTestCase
  • acs:computenestsupplier:{#regionId}:{#accountId}:servicetestcase/{#TestCaseId}
  • acs:computenestsupplier:{#regionId}:{#accountId}:servicetestcase/*
SupplierInfo
  • acs:computenestsupplier:{#regionId}:{#accountId}:supplierinfo/*
ServiceTestTask
  • acs:computenestsupplier:{#regionId}:{#accountId}:servicetesttask/*

Condition

Compute Nest does not define product-level condition keys. However, you can use Alibaba Cloud common condition keys for access control. For more information, see Common condition keys.

How to create custom RAM policies?

You can create custom policies and grant them to RAM users, RAM user groups, or RAM roles. For instructions, see: