我想要创建一个可以删除带有测试堆栈标签的快照的 IAM 策略。
我已经尝试过自己的版本政策如下:
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:describe*"
],
"Resource": [
"*"
],
"Effect": "Allow"
},
{
"Action": [
"ec2:DeleteSnapshot"
],
"Condition": {
"StringEquals": {
"ec2:ResourceTag/Stack": "Test"
}
},
"Resource": [
"*"
],
"Effect": "Allow"
}
]
}
不起作用。当我尝试以适用此策略的组成员身份删除快照时,权限被拒绝。出了
什么问题?
答案1
这对我有用(也许 API 已经更新了):
- Sid: RestrictSnapshotActions
Effect: Allow
Action:
- ec2:DeleteSnapshot
Resource:
- arn:aws:ec2:*::snapshot/*
Condition:
StringEquals:
ec2:ResourceTag/Stack: Test
答案2
DeleteSnapshot API 可以不支持资源级别权限. 因此我们不能使用除“ec2:Region”和 AWS 全局条件之外的任何条件。
因此,您必须删除条件块才能删除快照。