

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

# Amazon ECR에서 교차 계정 복제에 대한 레지스트리 권한 부여
<a name="registry-permissions-create-replication"></a>

교차 계정 정책 유형은 AWS 보안 주체에 권한을 부여하여 소스 레지스트리에서 레지스트리로 리포지토리를 복제할 수 있도록 하는 데 사용됩니다. 기본적으로 자체 레지스트리 내에서 교차 리전 복제를 구성할 수 있는 권한이 있습니다. 레지스트리에 콘텐츠를 복제할 수 있는 다른 계정에 권한을 부여하는 경우에만 레지스트리 정책을 구성하면 됩니다.

레지스트리 정책은 `ecr:ReplicateImage` API 작업에 대해 권한을 부여해야 합니다. 이 API는 리전 또는 계정 간에 이미지를 복제할 수 있는 내부 Amazon ECR API입니다. ` ecr:CreateRepository` 권한에 대한 권한을 부여할 수 있습니다. 이 권한을 사용하면 Amazon ECR이 레지스트리에 리포지토리가 없는 경우 리포지토리를 생성할 수 있습니다. 만약 `ecr:CreateRepository` 권한이 제공되지 않으면 소스 리포지토리와 이름이 같은 리포지토리를 레지스트리에 수동으로 생성해야 합니다. 두 작업이 모두 수행되지 않으면 복제가 실패합니다. 실패한 `CreateRepository` 또는 `ReplicateImage` API 작업은 모두 CloudTrail에 표시됩니다.

## 복제에 대한 권한 정책을 구성하는 방법(AWS Management Console)
<a name="registry-permissions-create-console"></a>

1. Amazon ECR 콘솔([https://console.aws.amazon.com/ecr/](https://console.aws.amazon.com/ecr/))을 엽니다.

1. 탐색 모음에서 레지스트리 정책을 구성할 리전을 선택합니다.

1. 탐색 창에서 **프라이빗 레지스트리**와 **기능 및 설정**을 선택한 다음 **권한**을 선택합니다.

1. **레지스트리 권한(Registry permissions)** 페이지에서 **문 생성(Generate statement)**을 선택합니다.

1. 정책 생성기를 사용하여 정책 설명을 정의하려면 다음 단계를 수행하세요.

   1. **정책 유형**에서 **복제 - 교차 계정**을 선택합니다.

   1. **설명 ID**에 고유한 설명 ID를 입력합니다. 이 필드는 레지스트리 정책에서 `Sid`로 사용됩니다.

   1. **계정(Accounts)**에는 권한을 부여할 각 계정의 계정 ID를 입력합니다. 여러 계정 ID를 지정할 경우 쉼표로 구분합니다.

1. **저장**을 선택합니다.

## 복제에 대한 권한 정책을 구성하는 방법(AWS CLI)
<a name="registry-permissions-create-cli"></a>

1. `registry_policy.json`이라는 이름의 파일을 만들고 레지스트리 정책으로 채웁니다.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement":[
           {
               "Sid":"ReplicationAccessCrossAccount",
               "Effect":"Allow",
               "Principal":{
                   "AWS":"arn:aws:iam::{{111122223333}}:{{root}}"
               },
               "Action":[
                   "ecr:CreateRepository",
                   "ecr:ReplicateImage"
               ],
               "Resource": [
                   "arn:aws:ecr:us-west-2:{{444455556666}}:repository/{{*}}"
               ]
           }
       ]
   }
   ```

------

1. 정책 파일을 사용하여 레지스트리 정책을 만듭니다.

   ```
   aws ecr put-registry-policy \
         --policy-text file://{{registry_policy.json}} \
         --region {{us-west-2}}
   ```

1. 레지스트리에 대한 정책을 검색하여 확인합니다.

   ```
   aws ecr get-registry-policy \
         --region {{us-west-2}}
   ```