

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon S3 게이트웨이 엔드포인트 생성
<a name="create-s3-gateway-endpoint"></a>

CodeArtifact는 Amazon Simple Storage Service(S3)를 사용하여 패키지 자산을 저장합니다. CodeArtifact에서 패키지를 가져오려면 Amazon S3에 대한 게이트웨이 엔드포인트를 생성해야 합니다. 빌드 또는 배포 프로세스가 CodeArtifact에서 패키지를 다운로드할 때 CodeArtifact에 액세스하여 패키지 메타데이터를 가져오고 Amazon S3에 액세스하여 패키지 자산(예: Maven `.jar` 파일)을 다운로드해야 합니다.

**참고**  
Python 또는 Swift 패키지 형식을 사용할 때는 Amazon S3 엔드포인트가 필요하지 않습니다.

 CodeArtifact용 Amazon S3 게이트웨이 엔드포인트를 생성하려면 Amazon EC2 `create-vpc-endpoint` AWS CLI 명령을 사용합니다. 엔드포인트를 생성할 때는 VPC의 라우팅 테이블을 선택해야 합니다. 자세한 내용은 *Amazon Virtual Private Cloud* 사용 설명서의 [게이트웨이 VPC 엔드포인트](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-gateway.html)를 참조하세요.

다음 명령은 Amazon S3 엔드포인트를 생성합니다.

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

## AWS CodeArtifact에 대한 최소 Amazon S3 버킷 권한
<a name="s3-gateway-endpoint-permissions"></a>

Amazon S3 게이트웨이 엔드포인트는 IAM 정책 문서를 사용하여 서비스에 대한 액세스를 제한합니다. CodeArtifact에 대한 최소 Amazon S3 버킷 권한만 허용하려면 엔드포인트에 대한 IAM 정책 설명을 생성할 때 CodeArtifact가 사용하는 Amazon S3 버킷에 대한 액세스를 제한하세요.

다음 표에서는 각 리전에서 CodeArtifact에 대한 액세스를 허용하려면 정책에서 참조해야 하는 Amazon S3 버킷을 설명합니다.


****  

| 리전 | Amazon S3 버킷 ARN | 
| --- | --- | 
|  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  | 

`aws codeartifact describe-domain` 명령을 사용하여 CodeArtifact 도메인에서 사용하는 Amazon S3 버킷을 가져올 수 있습니다.

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

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

다음 예는 `us-east-1` 리전의 CodeArtifact 작업에 필요한 Amazon S3 버킷에 액세스 권한을 부여하는 방법입니다. 다른 리전의 경우 위 표를 기반으로 해당 리전의 올바른 권한 ARN으로 `Resource` 항목을 업데이트해야 합니다.

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