本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
IAM 將上游登錄檔與 Amazon ECR私有登錄檔同步所需的許可
除了向私有登錄檔進行身分驗證和推送和提取映像所需的 Amazon ECRAPI許可之外,還需要下列其他許可,才能有效使用提取快取規則。
-
ecr:CreatePullThroughCacheRule
– 授予建立提取快取規則的許可。此許可必須透過身分型IAM政策授予。 -
ecr:BatchImportUpstreamImage
– 授予檢索外部映像並將其匯入到您的私有登錄檔的許可。您可以使用私有登錄檔許可政策、身分型IAM政策或使用資源型儲存庫許可政策來授予此許可。如需使用儲存庫許可的詳細資訊,請參閱 Amazon ECR 中的私有儲存庫政策。 -
ecr:CreateRepository
– 授予在私有登錄檔中建立儲存庫的許可。如果存放快取映像的儲存庫尚不存在,則需要此許可。此許可可由身分型IAM政策或私有登錄檔許可政策授予。
使用登錄檔許可
Amazon ECR私有登錄許可可用於範圍個別IAM實體使用提取快取的許可。如果IAM實體擁有IAM的政策授予的許可多於登錄檔許可政策授予的許可,則以IAM政策為優先。例如,如果使用者已具有 ecr:*
許可,則在登錄檔層級不需要額外的許可。
在 開啟 Amazon ECR主控台https://console.aws.amazon.com/ecr/
。 -
從導覽列選擇要在其中設定私有登錄檔許可陳述式的區域。
-
在導覽窗格中,選擇 Private registry (私有登錄檔)、Registry permissions (登錄檔許可)。
-
在 Registry permissions (登錄檔許可) 頁面上,選擇 Generate statement (產生陳述式)。
-
針對您要建立的每個提取快取許可政策陳述式,執行下列動作。
-
針對 Policy type (政策類型),選擇 Pull through cache policy (提取快取政策)。
-
針對 Statement id (陳述式 ID),提供提取快取陳述式政策的名稱。
-
對於IAM實體 ,指定要包含在政策中的使用者、群組或角色。
-
針對 Repository namespace (儲存庫命名空間),選取要與政策建立關聯的提取快取規則。
-
針對 Repository names (儲存庫名稱),指定要套用規則的儲存庫基本名稱。例如,如果您想要在 Amazon ECR Public 上指定 Amazon Linux 儲存庫,儲存庫名稱將為
amazonlinux
。
-
使用下列 AWS CLI 命令來指定使用 的私有登錄檔許可 AWS CLI。
-
建立具有您登錄檔政策內容的名為
ptc-registry-policy.json
的本機檔案。下列範例授予ecr-pull-through-cache-user
許可,以建立儲存庫並從 Amazon ECR Public 提取映像,Amazon Public 是與先前建立的提取快取規則相關聯的上游來源。{ "Version": "2012-10-17", "Statement": [ { "Sid": "PullThroughCacheFromReadOnlyRole", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
111122223333
:user/ecr-pull-through-cache-user
" }, "Action": [ "ecr:CreateRepository", "ecr:BatchImportUpstreamImage" ], "Resource": "arn:aws:ecr:us-east-1
:111122223333
:repository/ecr-public
/*" } ] }重要
僅當存放快取映像的儲存庫尚不存在時,才需要
ecr-CreateRepository
許可。例如,如果儲存庫建立動作和映像提取動作是由管理員和開發人員等個別IAM主體執行。 -
使用 put-registry-policy命令來設定登錄政策。
aws ecr put-registry-policy \ --policy-text file://
ptc-registry.policy.json
後續步驟
準備好開始使用提取快取規則時,以下為接下來的步驟。
-
建立提取快取規則。如需詳細資訊,請參閱在 Amazon 中建立提取快取規則 ECR。
-
建立儲存庫建立範本。儲存庫建立範本可讓您控制 ,以定義在提取快取動作期間,Amazon ECR代表您建立的新儲存庫要使用的設定。如需詳細資訊,請參閱用於控制提取快取或複寫動作期間建立的儲存庫的範本。