Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
AWS CodeArtifact référence aux autorisations
AWS CodeArtifact ressources et opérations
Dans AWS CodeArtifact, la ressource principale est un domaine. Dans une stratégie, vous utilisez un Amazon Resource Name (ARN) pour identifier la ressource à laquelle la stratégie s'applique. Les référentiels sont également des ressources auxquelles des ARN sont associés. Pour plus d'informations, consultez Amazon Resource Names (ARN) dans le document Référence générale d'Amazon Web Services.
Type de ressource | Format ARN |
---|---|
Domaine |
|
Référentiel. |
|
Groupe de packages |
|
Package avec un espace de noms |
|
Package sans espace de noms |
|
Toutes les CodeArtifact ressources |
|
Toutes les CodeArtifact ressources détenues par le compte spécifié dans la région AWS spécifiée |
|
L'ARN de ressource que vous spécifiez dépend de l'action ou des actions auxquelles vous souhaitez contrôler l'accès.
Vous pouvez indiquer un domaine spécifique (MyDomain
) dans votre déclaration à l'aide de son ARN comme suit.
"Resource": "arn:aws:codeartifact:
us-east-2
:123456789012
:domain/myDomain
"
Vous pouvez indiquer un dépôt spécifique (MyRepo
) dans votre instruction en utilisant son ARN comme suit.
"Resource": "arn:aws:codeartifact:
us-east-2
:123456789012
:domain/myDomain
/myRepo
"
Pour spécifier plusieurs ressources dans une seule instruction, séparez leurs ARN par des virgules. La déclaration suivante s'applique à tous les packages et référentiels d'un domaine spécifique.
"Resource": [ "arn:aws:codeartifact:
us-east-2
:123456789012
:domain/myDomain
", "arn:aws:codeartifact:us-east-2
:123456789012
:repository/myDomain
/*", "arn:aws:codeartifact:us-east-2
:123456789012
:package/myDomain
/*" ]
Note
De nombreux AWS services traitent deux points (:)) ou une barre oblique (/) comme le même caractère dans les ARN. Cependant, CodeArtifact utilise une correspondance exacte dans les modèles de ressources et les règles. Veillez à utiliser les caractères corrects lors de la création de modèles d'événements, afin qu'ils correspondent à la syntaxe ARN de la ressource.
AWS CodeArtifact Opérations et autorisation de l'API
Vous pouvez utiliser le tableau suivant comme référence lorsque vous configurez le contrôle d'accès et que vous rédigez des politiques d'autorisation que vous pouvez associer à une identité IAM (politiques basées sur l'identité).
Vous pouvez utiliser des AWS clés de condition larges dans vos AWS CodeArtifact polices pour exprimer des conditions. Pour obtenir une liste, reportez-vous à la section Référence des éléments de politique IAM JSON dans le guide de l'utilisateur IAM.
Vous spécifiez les actions dans le champ Action
de la politique. Pour spécifier une action, utilisez le préfixe codeartifact:
suivi du nom de l'opération d'API (par exemple, codeartifact:CreateDomain
ou codeartifact:AssociateExternalConnection
). Pour spécifier plusieurs actions dans une même instruction, séparez-les par une virgule (par exemple, "Action": [
"codeartifact:CreateDomain", "codeartifact:AssociateExternalConnection" ]
).
Utilisation de caractères génériques
Vous spécifiez un ARN, avec ou sans caractère générique (*) comme valeur de ressource dans le champ Resource
de la stratégie. Vous pouvez utiliser un caractère générique pour spécifier plusieurs actions ou ressources. Par exemple, codeartifact:*
spécifie toutes les CodeArtifact actions et codeartifact:Describe*
indique toutes les CodeArtifact actions qui commencent par le motDescribe
.
AWS CodeArtifact Opérations d'API | Autorisations requises (actions API) | Ressources |
---|---|---|
AssociateExternalConnection |
Nécessaire pour ajouter une connexion externe à un référentiel. |
|
CopyPackageVersions |
Pour copier des versions de package d'un référentiel source vers un référentiel de destination :
Obligatoire sur le référentiel de destination.
Obligatoire sur le référentiel source. |
|
CreateDomain |
Nécessaire pour créer des domaines.
Obligatoire sur la clé KMS fournie lorsque vous spécifiez une valeur autre que celle par défaut |
|
CreatePackageGroup |
Nécessaire pour créer des groupes de packages. |
|
CreateRepository |
Nécessaire pour créer des référentiels.
Obligatoire sur un référentiel pour pouvoir être ajouté en tant que référentiel en amont aux référentiels en aval. |
|
DeleteDomain |
Nécessaire pour supprimer des domaines. |
|
DeleteDomainPermissionsPolicy |
Nécessaire pour supprimer la politique de ressources d'un domaine. |
|
DeletePackage |
Nécessaire pour supprimer un package. |
|
DeletePackageGroup |
Nécessaire pour supprimer un groupe de packages. |
|
DeletePackageVersions |
Nécessaire pour supprimer des versions d'un package. |
|
DeleteRepository |
Autorisation requise pour supprimer un référentiel . |
|
DeleteRepositoryPermissionsPolicy |
Nécessaire pour supprimer la politique de ressources d'un dépôt. |
|
DescribeDomain |
Nécessaire pour obtenir des informations sur un domaine. |
|
DescribePackage |
Nécessaire pour obtenir des informations sur un package. |
|
DescribePackageGroup |
Nécessaire pour obtenir des informations sur un groupe de packages. |
|
DescribePackageVersion |
Nécessaire pour obtenir des informations sur la version d'un package. |
|
DescribeRepository |
Nécessaire pour obtenir des informations sur un dépôt. |
|
DisassociateExternalConnection |
Nécessaire pour supprimer une connexion externe à un référentiel. |
|
DisposePackageVersions |
Nécessaire pour supprimer les versions d'un package. |
|
GetAssociatedPackageGroup |
Nécessaire pour obtenir le groupe de packages associé à un package. |
|
GetAuthorizationToken |
Nécessaire pour obtenir un jeton d'autorisation temporaire pour accéder aux référentiels. |
|
GetDomainPermissionsPolicy |
Nécessaire pour obtenir une politique de ressources de domaine. |
|
GetPackageVersionAsset |
Nécessaire pour obtenir des actifs dans une version de package. |
arn:aws:codeartifact: |
GetPackageVersionReadme |
Nécessaire pour obtenir le fichier readme d'une version de package. |
|
GetRepositoryEndpoint |
Nécessaire pour obtenir un point de terminaison de référentiel. |
|
GetRepositoryPermissionsPolicy |
Nécessaire pour obtenir une politique de ressources du référentiel. |
|
ListAssociatedPackages |
Obligatoire pour renvoyer la liste des packages associés à un groupe de packages. |
|
ListDomains |
Obligatoire pour renvoyer une liste paginée de domaines dans un compte AWS. |
|
ListPackageGroups |
Obligatoire pour renvoyer une liste paginée des groupes de packages dans un domaine. |
|
ListPackages |
Obligatoire pour renvoyer une liste paginée de packages dans un référentiel. |
|
ListPackageVersionAssets |
Obligatoire pour renvoyer une liste paginée d'actifs dans une version de package. |
|
ListPackageVersionDependencies |
Obligatoire pour renvoyer une liste paginée des dépendances d'une version de package. |
|
ListPackageVersions |
Obligatoire pour renvoyer une liste paginée des versions de packages dans un référentiel. |
|
ListRepositories |
Obligatoire pour renvoyer une liste paginée de référentiels dans un compte AWS. |
|
ListRepositoriesInDomain |
Obligatoire pour renvoyer une liste paginée des référentiels d'un domaine. |
|
ListSubPackageGroups |
Obligatoire pour renvoyer une liste des groupes de packages enfants directs d'un groupe de packages. |
|
ListTagsForResource |
Requise pour répertorier les balises pour une ressource spécifiée. |
|
PublishPackageVersion |
Nécessaire pour publier une version de package dans un référentiel. |
|
PutDomainPermissionsPolicy |
Nécessaire pour ajouter une politique de ressources à un domaine. |
|
PutPackageMetadata |
Nécessaire pour publier les versions des packages Maven dans un référentiel, ou pour ajouter ou supprimer des balises npm dans les versions des packages npm. |
|
PutPackageOriginConfiguration |
Nécessaire pour mettre à jour la configuration d'origine d'un package. |
|
PutRepositoryPermissionsPolicy |
Nécessaire pour ajouter une politique de ressources à un référentiel. |
|
ReadFromRepository |
Nécessaire pour lire à partir d'un référentiel à l'aide d'un client de gestion de packages. |
|
TagResource |
Obligatoire pour étiqueter une ressource. |
|
UntagResource |
Nécessaire pour supprimer un tag d'une ressource. |
|
UpdatePackageGroup |
Nécessaire pour mettre à jour un groupe de packages. |
|
UpdatePackageGroupOriginConfiguration |
Nécessaire pour mettre à jour la configuration d'origine d'un groupe de packages. |
|
UpdatePackageVersionsStatus |
Nécessaire pour modifier le statut d'une version de package. |
|
UpdateRepository |
Nécessaire pour mettre à jour la description d'un dépôt ou les connexions en amont. Consultez Modifier la configuration en amont d'un référentiel ou consultez UpdateRepositoryle guide de CodeArtifact l'API pour plus d'informations.
Obligatoire sur un référentiel pour pouvoir être ajouté en tant que référentiel en amont aux référentiels en aval. |
|
Arns du groupe de packages
Note
Cette section explique comment les ARN des groupes de packages et le codage des modèles sont informatifs. Il est recommandé de copier des ARN depuis la console ou de récupérer des ARN à l'aide de l'DescribePackageGroup
API au lieu de coder des modèles et de construire des ARN.
Les politiques IAM utilisent le caractère générique pour correspondre à plusieurs actions IAM ou à plusieurs ressources. *
Les modèles de groupes de packages utilisent également le *
caractère. Afin de rédiger plus facilement des politiques IAM correspondant à un seul groupe de packages, le format ARN du groupe de packages utilise une version codée du modèle de groupe de packages.
Plus précisément, le format ARN du groupe de packages est le suivant :
arn:aws:codeartifact:
region
:account-ID
:package-group/my_domain
/encoded_package_group_pattern
Où le modèle de groupe de packages codé est le modèle de groupe de packages, certains caractères spéciaux étant remplacés par leurs valeurs codées en pourcentage. La liste suivante contient les caractères et leurs valeurs codées en pourcentage correspondantes :
*
:%2a
$
:%24
%
:%25
Par exemple, l'ARN d'un groupe de packages racine d'un domaine, (/*
), serait :
arn:aws:codeartifact:
us-east-1
:111122223333
:package-group/my_domain
/%2a
Notez que les caractères non inclus dans la liste ne peuvent pas être codés et que les ARN distinguent les majuscules et minuscules. Ils *
doivent donc être codés comme %2a
et non. %2A