从假定角色中扮演一个角色?

时间:2019-01-24 20:04:15

标签: amazon-web-services amazon-s3 boto3 amazon-iam

这就是我想做的- 我有3个不同的帐户-帐户A,帐户B和帐户C。

我从帐户A的一个角色开始。允许该角色承担帐户B的另一个角色。允许帐户B的这个角色访问以描述帐户C中的s3存储桶。

这是我的问题所在。我是否可以通过首先在帐户B中扮演一个角色来描述帐户C中的存储桶。然后使用此凭据,在帐户C中扮演一个描述3个存储桶的角色?

我当时想两次使用STS。这可行吗?我确实意识到这是可能的另一个问题中的两个帐户。但这是否可以通过三个不同的帐户进行?

像这个问题中的例子一样的东西会起作用吗? How to assume an AWS role from another AWS role?

我怀疑将帐户发送到帐户C的位置是帐户A还是帐户B?
帐户C当前具有仅允许帐户B承担的角色。帐户B具有仅允许帐户A访问它的角色。

2 个答案:

答案 0 :(得分:0)

担任角色时,您放弃当前的身份和权限,而采用新的身份和新权限-而不是其他权限。

如果您的目标是可以访问三个存储桶,那么您承担的角色需要访问这三个存储桶。

答案 1 :(得分:0)

是的。您可以从一个假定角色中扮演一个角色。

帐户C将具有信任帐户B的角色。帐户B将具有信任帐户A的角色。

每个角色还必须具有帐户承担的角色上的sts:AssumeRole的权限。

帐户A的角色可以sts:AssumeRole担任帐户B的角色,并信任EC2或您的IAM用户或任何其他人。

帐户B的角色可以sts:AssumeRole担任帐户C的角色,并信任帐户A。

帐户C的角色可以是s3:ListBuckets并信任帐户B。