当使用AWS跨账户角色假设时,可能会遇到STS角色会话被拒绝访问的问题。这通常是由于以下原因引起的:
跨账户角色不存在或无效:确保跨账户角色的ARN(Amazon资源名称)正确,并且角色在目标账户中存在且有效。
源账户未授予跨账户访问权限:在源账户中,必须为目标账户的跨账户角色授予适当的权限。可以使用以下策略将权限授予源账户中的角色:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowAssumeRole",
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::目标账户ID:role/目标账户角色名称"
}
]
}
请将上述策略中的目标账户ID和目标账户角色名称替换为目标账户中的相应值。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowAssumeRole",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::源账户ID:root"
},
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::目标账户ID:role/目标账户角色名称"
}
]
}
请将上述策略中的源账户ID和目标账户ID替换为相应的账户ID,并将目标账户角色名称替换为目标账户中的角色名称。
如果仍然遇到问题,可以尝试重新创建跨账户角色并仔细检查上述步骤是否正确执行。
上一篇:AWS跨账户访问问题