为什么以 AWS root 用户身份登录时不允许角色切换?

Abh*_*ath 5 amazon-web-services amazon-iam aws-policies

根据此处的AWS 文档-当您以 AWS 账户根用户身份登录时,无法切换角色

如果我们遵循 AWS 最佳实践,即不使用 root 用户执行操作,则此限制是有意义的,并且支持了 AWS 不允许以 root 用户进行角色切换的原因。然而,当使用存储桶策略时,一个账户中的根用户可以访问另一个账户中的存储桶,而且 AWS 似乎并没有限制这一点,这与角色不同(从技术上讲,两者都是使用资源策略的跨账户操作)。

为什么此“根用户限制”仅适用于角色而不适用于存储桶 - 有任何安全原因吗?

Joh*_*ein 2

对服务的访问通常是通过 IAM 用户、IAM 组和 IAM 角色的 IAM 权限授予的。

某些 AWS 服务还允许创建可授予对该特定服务的各个方面的访问权限的策略。例子有:

  • Amazon S3 存储桶策略
  • Amazon SQS 队列访问策略
  • Amazon SNS 访问策略

这些策略可用于授予跨账户访问权限以及未经身份验证的访问权限,例如对 Amazon S3 存储桶中的对象的公共访问以及将未经身份验证的消息发送到 Amazon SQS 队列的能力。

这些策略用于授予额外的访问权限。它们不涉及“承担”任何额外的角色。

  • 在AWS的早期,只有root登录。它可以做一切事情。随着时间的推移,人们希望添加细粒度的安全性,因此创建了 IAM。root 账户是过去的“遗留物”,不适合 IAM 安全模型。假设角色是 IAM 的功能,并且根账户不是 IAM 实体。最近,借助 AWS Organizations,无需 root 登录即可创建账户(而是使用 IAM 管理员角色)。这只是一段历史,而不是对“原因”的解释。 (4认同)