【问题标题】:AWS limited multi tenant IAM rolesAWS 有限多租户 IAM 角色
【发布时间】:2020-12-11 17:24:49
【问题描述】:

我正计划开发一个基于 AWS 堆栈的多租户平台。对于每个客户,我们称他们为 customerA 和 customerB。我想创建单独的资源并限制它们,让 customerA 无法看到来自 customerB 的所有内容。

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

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

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

提前致谢:)

【问题讨论】:

    标签: amazon-web-services amazon-iam access-rights rights-management


    【解决方案1】:

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

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

    AWS 实际上已经在他们的 How can I use permissions boundaries to limit the scope of IAM users and roles and prevent privilege escalation? 文档页面上创建了一个完整的策略,您可以将其用于此用例。

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

    【讨论】:

    • 谢谢,这正是我需要的 :)
    • 没问题,很高兴能帮上忙。如果您还有其他问题,请告诉我:)
    猜你喜欢
    • 2021-01-03
    • 2019-05-10
    • 1970-01-01
    • 1970-01-01
    • 2017-03-16
    • 1970-01-01
    • 2018-01-22
    • 2015-07-11
    • 2018-02-22
    相关资源
    最近更新 更多