根据标记

时间:2015-05-22 15:54:43

标签: amazon-web-services amazon-ec2 ami

是否可以限制谁可以通过IAM取消注册AMI?我想要使​​用的标准是附加到图像资源的标记。标签是" ReleaseStage"这些值是" Beta"," RC"和#34; GA" ...不应该允许开发者组中的IAM用户取消注册" GA"标记为AMI。

这是否可行,如果可行,我需要什么样的IAM政策文件来实现这一目标?

2 个答案:

答案 0 :(得分:1)

AWS文档有一个示例,显示在

中策略的条件中使用标记

在给定的示例中,相关行是

"Condition": {"StringEquals": {"ec2:ResourceTag/volume_user": "${aws:username}"}}

其中volume_user是示例中标记的名称,而表达式${aws:username}是与之比较的值。

从这里开始记录条件:

您的情况看起来像是

"Condition": {"StringEquals": {"ec2:ResourceTag/ReleaseStage": "GA"}}

并且您将在效果为“deny”的策略中使用它,将策略附加到“developers”组。政策本身看起来像这样:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Deny",
      "Action": "ec2:DeregisterImage",
      "Condition": {"StringEquals": {"ec2:ResourceTag/ReleaseStage": "GA"}}
    }
  ]
}

答案 1 :(得分:0)

根据此官方documentation,“ec2:DeregisterImage”不支持“条件”。 @Thomas Dickey提出的解决方案对我不起作用,我没有找到任何其他解决方案来做到这一点。