我怎样才能授予a_user
只读权限(即没有推送权限)而不b_user
被禁止?
我目前所做的:
添加了我的 AWS 访问权限 + 密钥
aws configure
创建了 ECR 存储库并执行
aws ecr get-login ...
命令来获取我的登录信息添加了一个权限,其作用如下:
Deny
, 校长:my_principal_id
, IAM:a_user
,Push
尝试了 docker Push,它明确拒绝了我,尽管
b_user
(权限仅禁止a_user
?)
答案1
更好的做法可能是用户的 IAM 策略而不是在 ECR 仓库级别上进行此操作。
尝试将其作为 IAM 策略a_user
(只读):
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecr:Get*",
"ecr:List*",
"ecr:Describe*",
"ecr:BatchGetImage",
"ecr:BatchCheckLayerAvailability"
],
"Resource": "arn:aws:ecr:*:*:repository/test"
},
{
"Effect": "Allow",
"Action": "ecr:GetAuthorizationToken",
"Resource": "*"
}
]
}
这是一项政策b_user
(读写):
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecr:*"
],
"Resource": "arn:aws:ecr:*:*:repository/test"
},
{
"Effect": "Allow",
"Action": "ecr:GetAuthorizationToken",
"Resource": "*"
}
]
}
希望有帮助:)