在多账户 AWS 环境中,我将如何在 IAM 用户登录时强制他/她承担角色?
Posted
技术标签:
【中文标题】在多账户 AWS 环境中,我将如何在 IAM 用户登录时强制他/她承担角色?【英文标题】:In a multi-account AWS environment, how would I force a role assumption on a IAM user when he/she logs in? 【发布时间】:2017-06-01 10:05:19 【问题描述】:我正在管理一个包含合并账单的多账户 AWS 环境。同时,我将所有 IAM 用户创建集中在一个别名(帐户)下,以进行有效管理。但他们的资源位于基于项目创建的其他 AWS 账户中。
我已经使用 IAM 角色设置了跨 AWS 账户的委派访问,它可以正常工作。但是,这些用户每次登录时都需要手动切换角色。这很麻烦。如何强制这些用户在登录时自动获取此类角色?
【问题讨论】:
这是为跨账户角色访问而设计的。为什么不在他们最常使用的帐户中创建组?目前据我所知,如果他们需要控制台访问不同的帐户,没有真正的解决方案。 我是唯一管理设置的人,所以我的目标是一次性实现多个目标:(1) 集中用户管理 (2) 按项目划分帐单 (3) 每个用户登录到他们的本地环境而没有太多麻烦 【参考方案1】:您可以向他们提供链接,以直接登录他们认为“本地”的帐户。如果他们未登录基本账户 AWS 将强制登录该账户,然后自动切换角色。
您可以使用以下格式自己手动构建链接: https://signin.aws.amazon.com/switchrole?account=account_id_number&roleName=role_name&displayName=text_to_display 您的管理员向您提供 account_id_number 和 role_name。对于 text_to_display,请参阅以下过程中步骤 5 中的说明。
http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html
【讨论】:
以上是关于在多账户 AWS 环境中,我将如何在 IAM 用户登录时强制他/她承担角色?的主要内容,如果未能解决你的问题,请参考以下文章
如何将驻留在账户 A 中的 s3 存储桶的访问权限授予来自多个 aws 账户的不同 iam 用户?
如何使用 terraform 创建具有访问权限和密钥的 AWS IAM 服务账户