我想将多租户 SaaS 的 AWS 资源分离到 AWS 组织下的单独账户中。
- 我有多个 OU,按功能划分,例如日志、审计、计算。我将拥有与每个 OU 相关联的 SCP。
- 每个租户在每个 OU 下都有一个帐户,这意味着当我添加新租户时,每个帐户都会将各自的 SCP 继承到该 OU。
为了使开发人员能够构建平台并能够调试正在运行的系统,我想使用中心辐射型方法来使用联合 IdP 进行访问控制,类似于此处所述:https://segment .com/blog/secure-access-to-100-aws-accounts/。
具体来说,我将拥有一个identity
绑定到 Okta 的帐户。用户将通过此帐户进行身份验证,然后用于sts:assume-role
升级到其他帐户中的角色。请注意,我想要一个单独的identity
帐户,并且不让用户对组织中的master
帐户进行身份验证(因此在组织内,我们拥有master
和identity
帐户,以及每个具有各自帐户的 OU)。
为了以编程方式创建新租户,我需要创建租户的帐户并将它们放置在正确的 OU 中,因此这需要在master
帐户中完成。我可以通过在master
帐户中创建一个角色并让开发人员从该identity
帐户中担任该角色来做到这一点。
如何在新账户中创建开发人员可以从该identity
账户代入的角色?成员帐户有一个名为OrganizationAccountAccessRole
自动创建的角色(请参阅此处了解详细信息),但该角色设置为只能从主帐户访问,并且可以访问该帐户中的所有内容。如何使identity
帐户中的开发人员能够以编程方式创建新帐户及其中的角色,而无需授予此类全能权限(他们应该没有更多的权限来执行此任务而不是必要的)。我认为我不能master
从帐户中担任该帐户identity
的角色,然后再在第三个帐户中担任角色吗?
编辑:我真的只对解决实现我描述的解决方案所需的步骤/配置的答案感兴趣。