【发布时间】:2021-11-14 23:01:32
【问题描述】:
我希望某些 AWS 政策专家能够帮助我解读这里发生的情况。
我一直在使用 AWS 中的 IAM 和资源策略。根据 AWS 自己的文档,除非所有策略中有任何明确拒绝,否则资源策略应优先于 IAM 策略。请参阅显示 AWS 策略评估逻辑的附加链接。如果资源策略是“允许”,则不应评估 IAM 策略。
我正在努力解决的挑战(使用 KMS 时)就是这个。我已定义如下所示的用户 IAM 策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kms:DeleteAlias"
],
"Resource": "*"
}
]
}
其唯一目的是允许用户删除 KMS CMK 别名。而且,我创建了一个 KMS CMK(资源策略),如下所示:
{
"Version": "2012-10-17",
"Id": "key-consolepolicy-3",
"Statement": [
{
"Sid": "Enable IAM User Permissions",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::xxxxxxxxxxxx:root"
},
"Action": "kms:*",
"Resource": "*"
},
{
"Sid": "Allow access for Key Administrators",
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::xxxxxxxxxxxx:user/user1"
]
},
"Action": [
"kms:Create*",
"kms:Delete*"
],
"Resource": "*"
},
}
我遇到的问题是,尽管 KMS 资源策略说我可以“创建别名”,但 AWS 不允许我这样做,除非 IAM 策略也明确包含它。
我希望有人能够向我解释 AWS 的策略逻辑实际上是如何工作的,以及我是否可能做错了什么。
提前非常感谢!
【问题讨论】:
-
这是跨账号吗?
-
不,都在一个帐户中。
-
那么 user1 是否附加了策略?
-
是的。对不起,我没有说清楚。上面的 IAM 策略是 user1 的策略。
-
您正在执行的确切 cli 调用是什么,您收到的确切错误消息是什么?
标签: amazon-web-services amazon-iam amazon-kms aws-policies