本质上,我希望 AccountA 中的 Iam 角色能够管理 AccountB 中的 dynamodb 表,但我使用的部署不支持 sts:AssumeRole (不是我的选择)。我在使用 S3 时遇到了同样的问题,但我能够添加一个 S3 存储桶策略,允许 AccountB 中的 Iam 角色访问它(见下文)。 dynamodb 表有类似的东西吗?
谢谢大家:D
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::AccountB:role/iam-role-name"
},
"Action": "*",
"Resource": [
"arn:aws:s3:::bucket-name",
"arn:aws:s3:::bucket-name/*"
]
}
]
}
您管理另一个账户中的牌桌的唯一方法是扮演角色。
与 S3 不同,DynamoDB 不支持基于资源的访问控制。不幸的是,没有简单的解决方法,因为 IAM 是一项安全功能。
Amazon DynamoDB 现在支持基于资源的策略 https://aws.amazon.com/about-aws/whats-new/2024/03/amazon-dynamodb-resource-based-policies/