私有儲存庫政策 - Amazon ECR

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

私有儲存庫政策

Amazon ECR 使用資源型許可來控制儲存庫的存取。以資源為基礎的權限可讓您指定哪些 使用者或角色可以存取儲存庫,以及他們可以執行的動作。根據預設,只有建立儲存庫的 AWS 帳戶可存取儲存庫。您可以套用政策文件,允許對您儲存庫的其他許可。

儲存庫政策與 IAM 政策的比較

Amazon ECR 儲存庫政策是 IAM 政策的子集,其範圍和專門用於控制對單個 Amazon ECR 儲存庫的存取。IAM 政策通常用於套用整個 Amazon ECR 服務的許可,但也可用於控制對特定資源的存取。

在決定特定使用者或角色可以對儲存庫執行哪些動作時,Amazon ECR 儲存庫政策和 IAM 政策都會用到。如果使用者或角色透過儲存庫政策獲准執行某個動作,但是透過 IAM 政策被拒絕許可 (反之亦然),則該動作將被拒絕。透過儲存庫政策或 IAM 政策任何一個即可允許使用者或角色的動作許可,但不需要兩者都允許。

重要

Amazon ECR 要求使用者擁有透過 IAM 政策呼叫 ecr:GetAuthorizationToken API 的許可,然後才能對登錄檔進行身分驗證,並從任何 Amazon ECR 儲存庫推送或提取任何映像。Amazon ECR 提供數個受管 IAM 政策來控制各種層級的使用者存取;如需詳細資訊,請參閱 Amazon Elastic Container Registry 身分型政策的範例

您可以使用這些政策類型的任何一個,來控制對您儲存庫的存取,如下列範例所示。

此範例顯示一個 Amazon ECR 儲存庫政策,允許特定使用者描述儲存庫和儲存庫中的映像。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ECRRepositoryPolicy", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::account-id:user/username"}, "Action": [ "ecr:DescribeImages", "ecr:DescribeRepositories" ] } ] }

此範例顯示一個 IAM 政策,透過使用資源參數將政策的範圍限定在儲存庫 (以儲存庫的完整 ARN 指定),可達成上述相同的目標。如需有關 Amazon Resource Name (ARN) 格式的詳細資訊,請參閱 資源

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowDescribeRepoImage", "Effect": "Allow", "Action": [ "ecr:DescribeImages", "ecr:DescribeRepositories" ], "Resource": ["arn:aws:ecr:region:account-id:repository/repository-name"] } ] }