Cette rubrique répertorie les formats de nom de ressource Alibaba Cloud (ARN) ainsi que les correspondances entre les API et les actions pour Container Registry (ACR). Utilisez ces informations pour identifier les valeurs correctes des éléments Action et Resource lors de la rédaction des stratégies Resource Access Management (RAM).
Formats ARN
Le tableau suivant présente le format ARN pour chaque type de ressource. Intégrez l'ARN dans l'élément Resource de votre stratégie.
| Type de ressource | Format ARN |
|---|---|
| Toutes les ressources | acs:cr:$regionid:$accountid:* |
| Instance | acs:cr:$regionid:$accountid:instance/$instanceid |
| Dépôt (tous dans l'instance) | acs:cr:$regionid:$accountid:repository/$instanceid/* |
| Dépôt (portée de l'instance) | acs:cr:$regionid:$accountid:repository/$instanceid |
| Dépôt (tous dans le namespace) | acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/* |
| Dépôt (spécifique) | acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
| Namespace | acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename |
| Namespace de chart (tous dans l'instance) | acs:cr:$regionid:$accountid:chart/$instanceid/* |
| Namespace de chart (portée de l'instance) | acs:cr:$regionid:$accountid:chart/$instanceid |
| Dépôt de charts (tous dans le namespace) | acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename/* |
| Namespace de chart (spécifique) | acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename |
| Dépôt de charts (spécifique) | acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename/$chartrepositoryname |
Paramètres ARN
| Paramètre | Description |
|---|---|
$regionid |
ID de la région. Remplacez par * pour cibler toutes les régions. |
$accountid |
ID du compte Alibaba Cloud. Remplacez par * pour cibler tous les comptes. |
$instanceid |
ID de l'instance Container Registry Enterprise Edition. |
$namespacename |
Nom du namespace. |
$repositoryname |
Nom du dépôt d'images. |
$chartnamespacename |
Nom du namespace de charts. |
$chartrepositoryname |
Nom du dépôt de charts. |
Règles d'authentification des API
Lorsqu'un utilisateur RAM ou un appelant Security Token Service (STS) invoque une API Container Registry, ACR vérifie que l'appelant dispose des autorisations requises. Le tableau ci-dessous établit la correspondance entre chaque opération d'API, l'action nécessaire et la portée de la ressource.
Les colonnes sont définies comme suit :
API : Nom de l'opération d'API.
Action : Chaîne d'autorisation à inclure dans l'élément
Actionde votre stratégie.Resource : Modèle ARN pour l'élément
Resource. La valeur*indique que l'action ne s'applique pas au niveau des ressources et nécessite"Resource": "*".Access level : Indique si l'action permet de lire des données (Read), de lister des ressources (List), de modifier des ressources (Write) ou de gérer les autorisations (Permissions management).
Remarque : Le caractère * sert de joker dans les modèles ARN et dans la colonne Resource.
Instance
| API | Action | Resource | Access level |
|---|---|---|---|
| GetInstance | cr:GetInstance |
acs:cr:$regionid:$accountid:instance/$instanceid |
Read |
| GetInstanceCount | cr:ListInstance |
* |
List |
| GetInstanceEndpoint | cr:GetInstanceEndpoint |
acs:cr:$regionid:$accountid:instance/$instanceid |
Read |
| GetInstanceUsage | cr:GetInstanceUsage |
acs:cr:$regionid:$accountid:instance/$instanceid |
Read |
| GetInstanceVpcEndpoint | cr:GetInstanceVpcEndpoint |
acs:cr:$regionid:$accountid:instance/$instanceid |
Read |
| ListInstance | cr:ListInstance |
* |
List |
| ListInstanceEndpoint | cr:ListInstanceEndpoint |
acs:cr:$regionid:$accountid:repository/$instanceid |
List |
| CreateInstanceEndpointAclPolicy | cr:CreateInstanceEndpointAclPolicy |
acs:cr:$regionid:$accountid:instance/$instanceid |
Write |
| CreateInstanceVpcEndpointLinkedVpc | cr:CreateInstanceVpcEndpointLinkedVpc |
acs:cr:$regionid:$accountid:instance/$instanceid |
Write |
| DeleteInstanceEndpointAclPolicy | cr:DeleteInstanceEndpointAclPolicy |
acs:cr:$regionid:$accountid:instance/$instanceid |
Write |
| DeleteInstanceVpcEndpointLinkedVpc | cr:DeleteInstanceVpcEndpointLinkedVpc |
acs:cr:$regionid:$accountid:instance/$instanceid |
Write |
| UpdateInstanceEndpointStatus | cr:UpdateInstanceEndpointStatus |
acs:cr:$regionid:$accountid:instance/$instanceid |
Write |
| GetArtifactBuildRule | cr:GetArtifactBuildRule |
acs:cr:$regionid:$accountid:instance/$instanceid |
Read |
| GetPersonalInstanceDomainAccessStatus | cr:GetPersonalInstanceDomainAccessStatus |
acs:cr:$regionid:$accountid:instance/$instanceid |
Read |
| ListRepositoryVulTagCount | cr:ListRepoVulTagCount |
acs:cr:$regionid:$accountid:instance/$instanceid |
List |
Namespace
| API | Action | Resource | Access level |
|---|---|---|---|
| GetNamespace | cr:GetNamespace |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename |
Read |
| ListNamespace | cr:ListNamespace |
acs:cr:$regionid:$accountid:repository/$instanceid/* |
List |
| CreateNamespace | cr:CreateNamespace |
acs:cr:$regionid:$accountid:repository/$instanceid |
Write |
| DeleteNamespace | cr:DeleteNamespace |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename |
Write |
| UpdateNamespace | cr:UpdateNamespace |
acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename |
Write |
Dépôt
| API | Action | Resource | Access level |
|---|---|---|---|
| GetRepository | cr:GetRepository |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| ListRepository | cr:ListRepository |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/* |
List |
| CreateRepository | cr:CreateRepository |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename |
Write |
| DeleteRepository | cr:DeleteRepository |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
| UpdateRepository | cr:UpdateRepository |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
Tags d'image et couches
| API | Action | Resource | Access level |
|---|---|---|---|
| GetRepoTagLayers | cr:GetRepositoryLayers |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| GetRepoTagManifest | cr:GetRepositoryManifest |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| ListRepoTag | cr:ListRepositoryTag |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
List |
| DeleteRepoTag | cr:DeleteRepositoryTag |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
Extraction, envoi et autorisation
| API | Action | Resource | Access level |
|---|---|---|---|
| GetAuthorizationToken | cr:GetAuthorizationToken |
* |
Read |
| PullRepository | cr:PullRepository |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| PushRepository | cr:PushRepository |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
Build
| API | Action | Resource | Access level |
|---|---|---|---|
| GetRepoBuildRecord | cr:GetRepositoryBuildRecord |
acs:cr:$regionid:$accountid:repository/$instanceid |
Read |
| GetRepoBuildRecordStatus | cr:GetBuildRepositoryStatus |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| ListRepoBuildRecord | cr:ListRepositoryBuild |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
List |
| ListRepoBuildRecordLog | cr:GetRepositoryBuildLog |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| ListRepoBuildRule | cr:ListRepositoryBuildRule |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
List |
| CancelRepoBuildRecord | cr:CancelBuildRepository |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
| CreateBuildRecordByRule | cr:BuildRepositoryByRule |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
| CreateRepoBuildRule | cr:CreateRepositoryBuildRule |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
| DeleteRepoBuildRule | cr:DeleteRepositoryBuildRule |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
| UpdateRepoBuildRule | cr:UpdateRepositoryBuildRule |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
Synchronisation
| API | Action | Resource | Access level |
|---|---|---|---|
| GetRepoSyncTask | cr:GetRepositorySync |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| ListRepoSyncRule | cr:ListSyncRule |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
List |
| ListRepoSyncTask | cr:GetRepositorySync |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
List |
| CreateRepoSyncRule | cr:CreateSyncRule |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
| CreateRepoSyncTaskByRule | cr:CreateRepositorySync |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
| DeleteRepoSyncRule | cr:DeleteSyncRule |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
Déclencheurs (webhooks)
| API | Action | Resource | Access level |
|---|---|---|---|
| ListRepoTrigger | cr:ListWebHook |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
List |
| ListRepoTriggerLog | cr:GetWebHookLog |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| ListRepoTriggerRecord | cr:GetWebHookLog |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| CreateRepoTrigger | cr:CreateWebHook |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
| DeleteRepoTrigger | cr:DeleteWebHook |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
| UpdateRepoTrigger | cr:UpdateWebHook |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
Analyse des vulnérabilités
| API | Action | Resource | Access level |
|---|---|---|---|
| GetRepoTagScanTask | cr:GetScan |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| GetScan | cr:GetScan |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| GetScanStatus | cr:GetScanStatus |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| GetScanCount | cr:GetScanCount |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Read |
| ListScanResult | cr:ListScanResult |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
List |
| PutScan | cr:PutScan |
acs:cr:$regionid:$accountid:repository/$instanceid/$namespacename/$repositoryname |
Write |
Charts Helm
| API | Action | Resource | Access level |
|---|---|---|---|
| GetChartNamespace | cr:GetNamespace |
acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename |
Read |
| GetChartRepository | cr:GetRepository |
acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename/$chartrepositoryname |
Read |
| ListChartNamespace | cr:ListNamespace |
acs:cr:$regionid:$accountid:chart/$instanceid/* |
List |
| ListChartRelease | cr:ListChartRelease |
acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename/$chartrepositoryname |
List |
| ListChartRepository | cr:ListRepository |
acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename/* |
List |
| CreateChartNamespace | cr:CreateNamespace |
acs:cr:$regionid:$accountid:chart/$instanceid |
Write |
| DeleteChartNamespace | cr:DeleteNamespace |
acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename |
Write |
| DeleteChartRelease | cr:DeleteChartRelease |
acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename/$chartrepositoryname |
Write |
| DeleteChartRepository | cr:DeleteRepository |
acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename/$chartrepositoryname |
Write |
| UpdateChartNamespace | cr:UpdateNamespace |
acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename |
Write |
| UpdateChartRepository | cr:UpdateRepository |
acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename/$chartrepositoryname |
Write |
| PullChart | cr:PullChart |
acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename/$chartrepositoryname |
Read |
| PushChart | cr:PushChart |
acs:cr:$regionid:$accountid:chart/$instanceid/$chartnamespacename/$chartrepositoryname |
Write |