

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Criar o endpoint de gateway do Amazon S3
<a name="create-s3-gateway-endpoint"></a>

CodeArtifact usa o Amazon Simple Storage Service (Amazon S3) para armazenar ativos de pacotes. Para extrair pacotes CodeArtifact, você deve criar um endpoint de gateway para o Amazon S3. Quando seu processo de compilação ou implantação baixa pacotes CodeArtifact, ele deve acessar CodeArtifact para obter os metadados do pacote e o Amazon S3 para baixar os ativos do pacote (por exemplo, arquivos `.jar` Maven). 

**nota**  
Não é necessário um endpoint do Amazon S3 ao usar os formatos de pacote Python ou Swift.

 Para criar o endpoint do gateway Amazon S3 para CodeArtifact, use o comando Amazon EC2. `create-vpc-endpoint` AWS CLI Ao criar o endpoint, você deve selecionar as tabelas de rotas para a VPC. Para obter mais informações, consulte [Endpoints da VPC de gateway](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-gateway.html) no *Guia do usuário da Amazon Virtual Private Cloud*. 

O comando a seguir cria um endpoint do Amazon S3.

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

## Permissões mínimas de bucket do Amazon S3 para AWS CodeArtifact
<a name="s3-gateway-endpoint-permissions"></a>

O endpoint de gateway do Amazon S3 usa um documento de política do IAM para limitar o acesso ao serviço. Para permitir somente as permissões mínimas do bucket do Amazon S3 CodeArtifact, restrinja o acesso ao bucket CodeArtifact do Amazon S3 usado quando você cria o documento de política do IAM para o endpoint.

A tabela a seguir descreve os buckets do Amazon S3 que você deve referenciar em suas políticas para permitir o acesso CodeArtifact em cada região.


****  

| Região | ARN do bucket do 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 | 

Você pode usar o `aws codeartifact describe-domain` comando para buscar o bucket do Amazon S3 usado por CodeArtifact um domínio.

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

### Exemplo
<a name="s3-gateway-policy-example"></a>

O exemplo a seguir ilustra como fornecer acesso aos buckets do Amazon S3 necessários CodeArtifact para operações na região. `us-east-1` Para outras regiões, atualize a entrada `Resource` com o ARN de permissão correto para sua região com base na tabela acima.

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