从同一账户中的用户代入 AWS 角色



我对从同一 AWS 账户中的IAM 用户代入角色的要求有点困惑。

根据此文档: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html:

如果用户与角色位于同一账户中,则可以执行任一操作 以下情况:

  • 将策略附加到用户(与 不同的帐户(。

  • 将用户直接添加为角色的信任策略中的委托人。

我显式地向授予我的用户的组添加了代入角色策略,但它无法承担记下的角色:

{
"Version": "2012-10-17",
"Statement": {
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::123456789:role/some-role-name"
}
}

一旦我将帐号作为委托人添加到目标角色的信任策略中,它就开始工作了:

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com",
"AWS": "arn:aws:iam::123456789:root"
},
"Action": "sts:AssumeRole"
}
]
}

所以,我很困惑有两个原因:

  1. 鉴于我引用的文档,为什么第一个策略本身不起作用?
  2. 文档中的第二个项目符号显示"将用户添加为主体"。 我想我添加了整个帐户而不是用户。 仅添加此用户的语法是什么? 我在阅读的文件中没有遇到它。

1(这对我来说看起来不错,因为帐户ID和角色名称是正确的。你能添加你得到的确切错误吗?

这是我的一个策略的实际示例,该策略允许被授予此策略的用户在帐户中承担角色developeracc1acc2acc3

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": [
"arn:aws:iam::acc1:role/developer",
"arn:aws:iam::acc2:role/developer",
"arn:aws:iam::acc3:role/developer"
]
}
]
}

2( 不使用root,使用 IAM 用户的arn。类似于"arn:aws:iam::123456789:user/John"

的东西

相关内容

  • 没有找到相关文章

最新更新