AWS sts 代入角色 - 用户受目标角色信任,用户具有代入目标角色的 sts 权限。 "User not allowed to perform assume role"



我正在尝试在不同的帐户中承担一个角色,以赋予我读取权限。角色(ROLE_IN_TARGET_ACCOUNT)具有我需要的权限,但是我得到一个错误,我的用户(SOURCE_USER)不允许承担该角色。

ROLE_IN_TARGET_ACCOUNT还具有以下信任关系

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::SOURCE_ACCOUNTID:root"
},
"Action": "sts:AssumeRole",
"Condition": {}
},
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::SOURCE_ACCOUNTID:user/SOURCE_USER"
},
"Action": "sts:AssumeRole",
"Condition": {}
}
]
}

SOURCE_ACCOUNTID

中已添加以下策略到IAM用户组
{
"Version": "2012-10-17",
"Statement": {
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::TARGET_ACCOUNT:role/ROLE_IN_TARGET_ACCOUNT"
}

和SOURCE_USER是这个用户组的成员。所以ROLE_IN_TARGET_ACCOUNT应该信任SOURCE_USER,而SOURCE_USER应该有权限假设ROLE_IN_TARGET_ACCOUNT。

然而,我得到了错误
An error occurred (AccessDenied) when calling the AssumeRole operation: User: arn:aws:iam::SOURCE_ACCOUNTID:user/SOURCE_USER is not authorized to perform: sts:AssumeRole on resource: arn:aws:iam::TARGET_ACCOUNT:role/ROLE_IN_TARGET_ACCOUNT

我在这里错过了什么?

您共享的策略看起来很好(除了第二个信任策略是冗余的-root包括SOURCE_ACCOUNTID中的所有认证主体和认证主体,其中包括SOURCE_ACCOUNTID)。

您的环境中是否存在scp、权限边界或会话策略?在策略评估流程中的任何地方显式的Deny将阻止其他良好的Allow配置工作。

相关内容

  • 没有找到相关文章

最新更新