AWS有限的多租户IAM角色

问题描述

我计划基于AWS堆栈开发多租户平台。对于每个客户,我们将它们分别命名为customerA和customerB。我要创建单独的资源,并限制它们,以使customerA无法看到customerB的所有内容。

为客户设置的第一步是设置具有权限的IAM用户,以管理该用户的所有权限。因此,我想授予IAM用户创建IAM角色和策略并将其分配给用户的权限,但仅适用于以资源名称customerA __ *为前缀的ARN。这样,可以赋予用户创建角色的权限,例如,按计划授予dynamoDB创建具有角色名称customerA__rolename的表权限的角色,但我想进一步限制它,即所有角色也都需要绑定到此范围,否则customerA__deleteTable可以也可用于删除customerBs表。

因此,简而言之:是否可以创建一个IAM角色,以限制所有拥有名称customerA__xyz的权限,并将每个已创建角色的范围限制为名称为customerA __ *的资源

如果没有其他建议,如何为AWS设置多租户权限?我不想为每个客户创建一个单独的AWS账户以进行分离,并且我怀疑这可以通过合法方式自动进行。

预先感谢:)

解决方法

通过编写permission boundary确实具有此功能,该功能可防止IAM用户实际授予比他们已经拥有的权限更多的权限(这将允许他们绕过此权限)。

权限边界将在权限之前进行评估,因此其优先级高于用户可以设置的任何权限。

AWS实际上已经在其How can I use permissions boundaries to limit the scope of IAM users and roles and prevent privilege escalation?文档页面上为您创建了可用于该用例的彻底策略。

如果将其添加到您的帐户中,则应该能够验证它是否提供了您期望的功能。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...