创建跨账户IAM角色访问(Creating Cross-Account IAM Roles)

关注公众号:AWS爱好者(iloveaws)
文 | 沉默恶魔(禁止转载,转载请先经过作者同意)
网站:www.iloveaws.cn

在这里插入图片描述

【 Domain 1的组织复杂性设计(Design for Organizational Complexity)】——创建跨账户IAM角色访问

AWS解决方案架构师认证 Professional / AWS Certified Solutions Architect– Professional系列的课程的最终目的是帮助大家顺利通过新版考试。随着后续系列课程的持续深入,我们的目标是将所有新版考试涉及到的内容、考点逐步推出系列课程,帮助大家备考。此系列课程也同样适用于想了解和学习AWS的同学,请大家多多支持。
Hello大家好,欢迎回来,我们今天将从头开始配置AWS,实操演示创建跨账户IAM角色访问的内容。

我们上节课演示了zhangsan用户通过登陆身份账户,成功切换至生产环境账户下的CA-TEST角色,并拥有了生产环境账户下的S3存储桶的完全访问权限。我们今天将从头开始配置AWS,实现这部分内容。
上节课已经介绍了跨账户角色访问的配置步骤,我们在来复习一下。

  1. 首先,在身份账户(ID:256454142732)中创建一个IAM用户,我们取名为zhangsan。
  2. 然后,在生产环境账户(ID:458556760960)中创建一个跨账户角色:我们取名为CA-TEST,并为此角色分配在此账户下的S3存储桶的完全访问权限。
  3. 最后,在身份账户(ID:256454142732)中配置允许用户zhangsan 切换到
    生产环境账户(ID:458556760960)的CA-TEST 角色。

我们准备了两个AWS账户,一个作为PPT中左边的身份账户,一个作为右边的生产账户。

在这里插入图片描述
为了避免实操的时候来回、注销登录账户,我们准备了两个浏览器,使用chrome登陆身份账户,使用safari登陆生产账户,分别登陆AWS管理控制台后,在控制台右上角支持-支持中心页面,分别可以查询两个账户的账户ID。身份账户的账户ID后四位是2732,生产账户的账户ID后四位是0960。

现在,chrome是身份账户,safari是生产账户。

在这里插入图片描述

1、创建zhangsan用户

我们现在进行第一步,在身份账户(ID:256454142732)中创建一个IAM用户,用户名为zhangsan。
进入到IAM,创建zhangsan用户
在这里插入图片描述

我们已经在身份账户中成功创建了IAM用户zhangsan

在这里插入图片描述

2、创建生产账户角色,并分配S3存储桶权限

然后,我们进行上面的第二步,在生产环境账户(ID:458556760960)中创建一个跨账户角色:我们取名为CA-TEST,并为此角色分配在此账户下的s3存储桶的完全访问权限。

同样,我们找到safari浏览器,在生产账户下创建角色CA-TEST。在IAM中点击创建角色后,出现创建角色的页面,注意我们需要创建的是允许身份账户中的用户zhangsan访问的角色,所有要选择受信任实体类型为其他AWS账户。

然后指定可以使用此角色的账户,输入zhangsan所在的身份账户的ACCOUNT ID,这块大家能理解吧?

我们回到chrome浏览器, 也就是身份账户,然后通过前面介绍的通过支持中心,获得身份账户的accoutid,填入创建角色页面的账户ID输入框

在这里插入图片描述

我们进行下一步,在权限策略页面,我们给与这个角色S3存储桶的完全访问权限。
然后在角色名称,我们将此角色命名为前面提到的CA-TEST。

OK,现在CA-TEST角色已经创建完成了。

在这里插入图片描述
我们点击我们刚才创建的CA-TEST角色,进入到角色摘要页面。我们要注意两个信息,一个是角色ARN,还有一个链接,这个链接就是身份账户中的zhangsan在切换此角色时需要访问的链接。
在这里插入图片描述

然后,有一个非常重要的部分,是信任关系选项卡,我们在信任关系选项卡通过编辑信任关系,你会看到策略文档的内容为principal元素指定了可担任该角色的对象,就是我们的zhangsan所在的身份账户的arn,尾数为2732的数字是我们的身份账户的账户id。
action为允许 sts AssumeRole,这整个策略文档的内容为所有身份账户的用户,都被允许担任生产环境的该角色。

在这里插入图片描述

3、配置zhangsan承担角色权限

好的,我们现在已经完成配置步骤的第二步,接下来我们进行最后一个配置步骤,
在身份账户(ID:256454142732)中配置允许用户zhangsan 承担 生产环境账户ID:458556760960)的CA-TEST 角色。
在这里插入图片描述

进入到身份账户的IAM,为zhangsan添加权限,直接选择添加内联策略,然后选择JSON选项卡,我们已经准备了现成的模板,将模板的内容复制进去,这个模板的内容我们会付到课程后面,大家可以直接使用它。
在这里插入图片描述

跨账户IAM角色策略模板:

{
“Version”: “2012-10-17”,
“Statement”: {
“Effect”: “Allow”,
“Action”: “sts:AssumeRole”,
“Resource”: “arn:aws:iam::PRODUCTION-ACCOUNT-ID:role/UpdateApp”
}
}
复制策略模板后,需要修改resource为生产账户的ca-test的角色arn。整体策略的内容是允许用户承担生产账户的这个角色。

我们继续下一步,将策略名称命名为CA-TEST。

好的,目前我们就完成了所有的配置。接下来我们测试下。

在这里插入图片描述

4、实操演示

首先,我们使用IAM用户zhangshan登陆身份账户(ID:256454142732)。账户填写身份账户的账户ID,用户名为zhangsan,填写对应zhangsan的密码。
在这里插入图片描述

成功登陆后进入AWS管理控制台,控制台右上角可以看到我们目前登录的用户是zhangsan

ok,我们继续,我们使用zhangsan登陆了身份账户(ID:256454142732),然后下一步需要在AWS管理控制台上将其切换为AWS生产环境账户(ID:458556760960)的角色CA-TEST。

在这里插入图片描述
我们在生产账户的CA-TEST角色摘要中找到切换链接
https://signin.aws.amazon.com/switchrole?roleName=CA-TEST&account=458556760960

复制到身份账户的浏览器中,接下来进入到切换角色页面,其中账户为生产环境账户ID,角色为我们在生产环境账户中已经建立的CA-TEST角色。在显示名称输入框我们输入生产账户,这样标示会看着比较清楚,然后点击切换角色。
在这里插入图片描述

点击切换角色后实际发生的是身份账户(ID:256454142732)的zhangsan用户,已经登录到了生产环境账户(ID:458556760960),且已经切换成为我们在生产环境账户中创建的角色CA-TEST。管理控制台右上角的图标可以看到这已经是登陆到生产环境账户了
在这里插入图片描述

我们测试下访问下S3存储桶,没有问题。

目前用户zhangsan用户已经可以通过登陆身份账户(Identity Account),然后通过跨AWS账户角色访问的方式,拥有生产环境账户中的S3存储桶资源的完全访问权限了。

在这里插入图片描述

在AWS管理控制台点击生产环境—返回zhangsan,将会从生产环境账户的角色返回到身份账户的zhangsan环境。

在这里插入图片描述

zhangsan如需再次访问生产账户的S3存储桶,只需要在控制台右上角的角色历史记录中,再次选择生产账户即可直接切换至生成账户角色,非常方便

以上,就是我们实操的内容。

在这里插入图片描述

以上就是我们今天的课程内容, 我们用了两个AWS账户实操配置并演示了在不同的账户间实现跨账户角色访问,这在企业有多个AWS的场景下,它提供了用户,权限的集中化管理和控制,并当有访问其他账户资源需求时,通过跨账户角色访问的方式,避免了来回切换账户带来的繁琐的操作。

希望此系列教程能为您通过 AWS解决方案架构师认证 Professional 认证考试带来帮助,如您有任何疑问

关注公众号:AWS爱好者(iloveaws)
文 | 沉默恶魔(禁止转载,转载请先经过作者同意)
网站:www.iloveaws.cn
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值