首页 文章

IAM角色访问另一个AWS账户的服务

提问于
浏览
0

出于安全原因,我们有一个dev,QA和prod AWS账户 . 我们正在为实例使用IAM角色 . 这在每个帐户的基础上正常工作 .

现在招聘的是我们想要从Dev aws账户中的一个QA账户的EC2实例上访问多个aws服务(例如S3,SQS,SNS,EC2等) .

我们创建了STS策略和角色,允许 Trusted entities 作为另一个AWS账户,但不知何故无法将此角色附加到EC2实例 .

示例STS策略:

{
"Version": "2012-10-17",
"Statement": {
    "Effect": "Allow",
    "Action": "sts:AssumeRole",
    "Resource": "arn:aws:iam::546161XXXXXX:role/AdminAccessToAnotherAccount"
   }
}

AdminAccessToAnotherAccount: 这个具有管理员访问权限的另一个帐户的政策 .

附加到ec2实例时未列出此角色 .

1 回答

  • 0

    您的情况似乎是:

    • 您在Account-1中有一个EC2实例

    • IAM角色("Role-1")已分配给EC2实例

    • 您想从EC2实例访问Account-2中的资源

    以下步骤可以启用此功能:

    • 在Account-2("Role-2")中创建具有您希望实例接收的权限的IAM角色

    • 将信任策略添加到Role-2,信任Role-1

    • 确认Role-1有权在Role-2上调用AssumeRole

    • 在使用Role-1的EC2实例中,在Role-2上调用AssumeRole

    • 它将返回一组凭据(访问密钥,密钥,令牌)

    • 使用这些凭据访问Account-2中的服务(通过 aws configure --profile foo 或API调用)

    例子:

相关问题