Creación del punto de conexión de puerta de enlace de Amazon S3 - CodeArtifact

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Creación del punto de conexión de puerta de enlace de Amazon S3

CodeArtifact usa Amazon Simple Storage Service (Amazon S3) para almacenar los activos del paquete. Para extraer paquetes de CodeArtifact, debe crear un punto de conexión de puerta de enlace para Amazon S3. Cuando el proceso de compilación o implementación descarga paquetes de CodeArtifact, debe acceder a CodeArtifact para obtener los metadatos del paquete y a Amazon S3 para descargar los activos del paquete (por ejemplo, archivos .jar de Maven).

nota

No se necesita ningún punto de conexión de Amazon S3 cuando se utilizan los formatos de paquete Python o Swift.

Para crear el punto de conexión de la puerta de enlace de Amazon S3 para CodeArtifact, utilice el comando create-vpc-endpoint AWS CLI de Amazon EC2. Cuando cree el punto de conexión, debe seleccionar las tablas de enrutamiento para su VPC. Para obtener más información, consulte Puntos de conexión de VPC de la puerta de enlace en la Guía del usuario de Amazon Virtual Private Cloud.

El comando siguiente crea un punto de conexión de Amazon S3.

aws ec2 create-vpc-endpoint --vpc-id vpcid --service-name com.amazonaws.region.s3 \ --route-table-ids routetableid

Permisos mínimos de bucket de Amazon S3 para AWS CodeArtifact

El punto de conexión de puerta de enlace de Amazon S3 utiliza un documento de políticas de IAM para limitar el acceso al servicio. Para permitir solo los permisos mínimos del bucket de Amazon S3 para CodeArtifact, restrinja el acceso al bucket de Amazon S3 que CodeArtifact utiliza cuando crea el documento de política de IAM para el punto de conexión.

La siguiente tabla describe los buckets de Amazon S3 a los que debe hacer referencia en sus políticas para permitir el acceso a CodeArtifact en cada región.

Región ARN del bucket de 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

Puede usar el comando aws codeartifact describe-domain para recuperar el bucket de Amazon S3 utilizado por un dominio de CodeArtifact.

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" } }

Ejemplo

El siguiente ejemplo ilustra cómo proporcionar acceso a los buckets de Amazon S3 necesarios para las operaciones de CodeArtifact en la región us-east-1. Para otras regiones, actualice la entrada Resource con el ARN de permiso correcto para su región según la tabla anterior.

{ "Statement": [ { "Sid": "Access-to-specific-bucket-only", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Allow", "Resource": ["arn:aws:s3:::assets-193858265520-us-east-1/*"] } ] }