如何根据标记

时间:2017-11-03 14:49:25

标签: amazon-web-services amazon-ec2

我有一个名为“devops”的IAM组,我想要应用一个策略,该策略将授予该组成员对标记为“Class = devops”的EC2实例的完全访问权限,并且不能访问任何其他EC2实例。我发现亚马逊的这篇伟大的知识中心文章让我走上了正确的道路:https://aws.amazon.com/premiumsupport/knowledge-center/iam-ec2-resource-tags/

我看到的问题源于该页面中间的“注意”:

  

“完全控制”扩展到EC2命名空间内的所有操作,但当前不支持资源级权限的Amazon EC2 API操作除外。有关更多信息,请参阅Amazon EC2 API参考中的Unsupported Resource-Level Permissions

如果您按照list of unsupported resource-level permissions注释中的链接,您会发现它有数十个项目。你也会发现这句话:

  

可以在IAM策略中使用所有Amazon EC2操作来授予或拒绝用户使用该操作的权限。但是,并非所有Amazon EC2操作都支持资源级权限,这使您可以指定可以执行操作的资源。以下Amazon EC2 API操作当前不支持资源级权限;因此,要在IAM策略中使用这些操作,必须授予用户使用语句中Resource元素的*通配符来使用操作的所有资源的权限。   为了给所有这些权限授予“允许”权限。

如果我想将此策略中的权限授予所有不支持资源级权限的操作,那么我的策略将是数百个行!是否有更好,更简洁的方法来做到这一点?

1 个答案:

答案 0 :(得分:1)

有一个简单的快捷方式。许多动作都以相同的词开头,例如" Describe"。您可以使用通配符覆盖此列表。例如,"Action" : "ec2:Describe*"

请小心操作,然后覆盖针对特定资源的DENY操作的其他策略部分。