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.
Créer le point de terminaison de la passerelle Amazon S3
CodeArtifact utilise Amazon Simple Storage Service (Amazon S3) pour stocker les actifs du package. Pour extraire des packages CodeArtifact, vous devez créer un point de terminaison de passerelle pour Amazon S3. Lorsque votre processus de création ou de déploiement télécharge des packages depuis CodeArtifact, il doit y accéder CodeArtifact pour obtenir les métadonnées des packages et Amazon S3 pour télécharger les actifs des packages (par exemple, .jar
les fichiers Maven).
Note
Un point de terminaison Amazon S3 n'est pas nécessaire lors de l'utilisation des formats de package Python ou Swift.
Pour créer le point de terminaison de la passerelle Amazon S3 pour CodeArtifact, utilisez la commande Amazon EC2. create-vpc-endpoint
AWS CLI Lorsque vous créez le point de terminaison, vous devez sélectionner les tables de routage pour votre VPC. Pour plus d'informations, consultez la section Gateway VPC Endpoints dans le guide de l'utilisateur d'Amazon Virtual Private Cloud.
La commande suivante crée un point de terminaison Amazon S3.
aws ec2 create-vpc-endpoint --vpc-id
vpcid
--service-name com.amazonaws.region
.s3 \ --route-table-idsroutetableid
Autorisations minimales de compartiment Amazon S3 pour AWS CodeArtifact
Le point de terminaison de la passerelle Amazon S3 utilise un document de politique IAM pour limiter l'accès au service. Pour n'autoriser que les autorisations minimales relatives au compartiment Amazon S3 CodeArtifact, limitez l'accès au compartiment Amazon S3 CodeArtifact utilisé lorsque vous créez le document de politique IAM pour le point de terminaison.
Le tableau suivant décrit les compartiments Amazon S3 auxquels vous devez faire référence dans vos politiques pour autoriser l'accès CodeArtifact dans chaque région.
Région | ARN du compartiment Amazon S3 |
---|---|
us-east-1 |
arn:aws:s3 : ::assets-193858265520-us-east-1 |
us-east-2 |
arn:aws:s3 : ::assets-250872398865-us-east-2 |
us-west-2 |
arn:aws:s3 : ::assets-787052242323-us-west-2 |
eu-west-1 |
arn:aws:s3 : ::assets-438097961670-eu-west-1 |
eu-west-2 |
arn:aws:s3 : ::assets-247805302724-eu-west-2 |
eu-west-3 |
arn:aws:s3 : ::assets-762466490029-eu-west-3 |
eu-north-1 |
arn:aws:s3 : :assets-611884512288-eu-north-1 |
eu-south-1 |
arn:aws:s3 : ::assets-484130244270-eu-south-1 |
eu-central-1 |
arn:aws:s3 : ::assets-769407342218-eu-central-1 |
ap-northeast-1 |
arn:aws:s3 : ::assets-660291247815-ap-northeast-1 |
ap-southeast-1 |
arn:aws:s3 : ::assets-421485864821-ap-southeast-1 |
ap-southeast-2 |
arn:aws:s3 : ::assets-860415559748-ap-southeast-2 |
ap-south-1 |
arn:aws:s3 : :assets-681137435769-ap-south-1 |
Vous pouvez utiliser la aws codeartifact describe-domain
commande pour récupérer le compartiment Amazon S3 utilisé par un CodeArtifact domaine.
aws codeartifact describe-domain --domain
mydomain
{ "domain": { "name": "mydomain", "owner": "111122223333", "arn": "arn:aws:codeartifact:us-west-2:111122223333:domain/mydomain", "status": "Active", "createdTime": 1583075193.861, "encryptionKey": "arn:aws:kms:us-west-2:111122223333:key/a73que8sq-ba...", "repositoryCount": 13, "assetSizeBytes": 513830295, "s3BucketArn": "arn:aws:s3:::assets-787052242323-us-west-2" } }
Exemple
L'exemple suivant montre comment fournir l'accès aux compartiments Amazon S3 requis pour les CodeArtifact opérations dans la us-east-1
région. Pour les autres régions, mettez à jour l'Resource
entrée avec l'ARN d'autorisation correct pour votre région, conformément au tableau ci-dessus.
{ "Statement": [ { "Sid": "Access-to-specific-bucket-only", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Allow", "Resource": ["arn:aws:s3:::assets-
193858265520
-us-east-1
/*"] } ] }