如何解决AWS IAM权限边界的真正好处是什么?
如果AWS中的用户已附加AdministratorAccess
策略,则该用户具有该帐户的完全AWS访问权限。但是,如果将权限限制附加到该用户,则可以限制其访问权限。例如,假设用户的权限边界设置为AmazonDynamoDBFullAccess
,则完全访问权限仅限于DynamoDB。
上述方法的真正好处是,只需删除AdministratorAccess
策略并将AmazonDynamoDBFullAccess
附加到用户即可实现相同的限制/权限。
还有什么需要了解的吗?
解决方法
这不是IAM权限边界的目的,也不是它的操作方式。
来自Permissions boundaries for IAM entities - AWS Identity and Access Management:
AWS支持IAM实体(用户或角色)的权限边界。权限边界是一种高级功能,用于使用托管策略来设置基于身份的策略可以授予IAM实体的最大权限。实体的权限边界允许它仅执行其基于身份的策略及其权限边界所允许的操作。
通过一个示例来说明,假设开发人员需要在其软件开发职责中创建IAM角色的权限。分配该权限可能是非常危险的,因为他们可以创建具有完全管理员权限的角色,从而为自己授予更多所需的权限。
为限制他们的能力,可以向开发人员添加权限边界,以便他们只有在将他们定义的角色附加到限制权限的权限边界上时才能创建IAM角色角色(例如,因此只能用于访问S3和DynamoDB,而不能用于其他服务)。这可能有点令人困惑,但可以将其视为必须 附加到它们所赋予的任何权限的一组规则,以使它们不能授予全部权限。这是一种授予他们权限的方法,但是将他们可以授予其他实体的权限限制为
。此概念与分配您在问题中提到的IAM托管策略完全不同。在大多数情况下,分配IAM托管策略就足够了。仅当有人有权创建新的IAM实体时,权限边界才真正适用。