如何访问AWS组织中其他账号创建的资源?
解决AWS组织内成员账号资源访问问题
核心前提修正
首先明确:AWS组织不存在「并行根用户」概念,你之前的操作完全错误——根用户是每个AWS账号独有的,无法跨账号添加。组织的管理账号与成员账号是独立账号,管理账号默认无成员账号资源访问权限,必须通过IAM角色或跨账号权限配置实现访问。
具体解决步骤
1. 确认成员账号状态
登录AWS组织管理账号控制台,进入「AWS Organizations」页面:
- 查看「账户」列表,确认产生账单的资源所属成员账号是否在组织内(收购项目的资源可能属于软件公司原创建的独立账号,需确认是否已加入你的组织)
- 若成员账号不在组织内,需让对方将账号加入(可由成员账号根用户操作,或你发送加入邀请)
2. 在成员账号创建跨账号访问角色(AWS最佳实践)
这是替代根用户共享的安全方式,需登录目标成员账号操作(可请软件公司协助):
- 进入IAM控制台,创建新角色:
- 信任实体类型选「AWS账户」,输入你的管理账号ID
- 为角色附加所需权限策略:比如管理EC2用
AmazonEC2FullAccess(或更精细的自定义策略),修改Git仓库(如CodeCommit)用AWSCodeCommitFullAccess - 记录角色ARN(格式:
arn:aws:iam::[成员账号ID]:role/[角色名])
3. 从管理账号切换到成员账号角色
回到管理账号控制台:
- 点击右上角用户名,选择「切换角色」
- 输入成员账号ID(或别名)、角色名称,点击「切换角色」
- 切换成功后,控制台会显示当前角色与所属账号,此时即可查看该成员账号下的EC2实例,执行修改Git仓库配置等操作
4. 修复资源搜索工具的问题
- 确保每个成员账号都启用了Resource Explorer:进入Resource Explorer控制台,按提示创建本地索引;如需跨账号搜索,在管理账号创建聚合索引
- 检查Resource Manager权限:管理账号需通过组织SCP(服务控制策略)或IAM角色权限,获得访问成员账号资源管理器的权限
5. 清理错误操作(关键)
- 立即删除之前错误设置的「并行根用户」——根用户权限过大,跨账号共享属于严重安全风险,违反AWS最佳实践
- 建议所有成员账号禁用根用户访问密钥,统一使用IAM用户或角色操作
额外提示
- 若无法直接登录成员账号,可通过AWS组织「账户管理」功能向成员账号发送访问请求,要求对方授予权限
- 权限遵循最小权限原则,避免给角色附加过于宽泛的权限,仅配置EC2管理、Git仓库修改所需的具体权限即可
内容的提问来源于stack exchange,提问作者Oskari Lager
相关产品推荐
相关产品推荐

