AWS IAM组:devise为最小权限 – 拒绝或允许

我正在尝试创build适当的AWS IAM组来实施最低特权。 是否最好创build明确拒绝特定操作并允许其他任何操作的组,或创build仅允许所需的特定操作的组? AWS的策略评估逻辑与我使用的有所不同。

对于实例,说我想要下面的影响。

  1. 一些pipe理员可以执行任何操作,除了访问IAM(Powerusers)或对CloudFormation进行更改。
  2. 一些pipe理员可以做任何事情,除了访问IAM。
  3. 一些pipe理员可以做任何事情。

最好是这样devise:

Admins: Can do anything. AdminsNoIAM: Can do anything with explicit deny to IAM. AdminsNoCloudFormation: Can do anything with explicit deny to CloudFormation.

要么

Admins: Can do anything. AdminsLimited: Can do anything explicitly listed, cloudformation and IAM not listed. CloudFormationAdmins: Explicitly allows CloudFormation access.

这似乎是第一个select是最简单的实现,但感觉它可能会有点笨拙。 我可能不会习惯AWS处理显式拒绝的方式。 谢谢!

IAM用户默认没有权限,您必须将他们添加到组或授予他们权限,然后才能执行任何操作。 这显示默认情况下AWS IAM拒绝,除非明确允许。

您最好只添加个人用户或组需要的权限。 其他的一切都将被IAM默认拒绝。 如果您想授予一切否认您将违背最佳实践和AWSbuild立IAM的方式。

另外,正如ceejayoz指出的那样,定期添加新function,所以如果默认允许,您将不断更新策略。