【发布时间】:2019-04-23 15:42:26
【问题描述】:
我有一个名为“atest-bucket”的 S3 存储桶。在这个桶里面,我有一个名为“data”的目录。我需要从外部帐户向用户提供对此目录的访问权限(此用户将访问我的数据以运行 AWS ElasticMapReduce 作业)。
使用我创建的策略,用户在尝试访问时仍然收到 403:
拒绝访问(服务:Amazon S3;状态代码:403;错误代码: 拒绝访问;
这是我的政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AccessToDataFiles",
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::11111111111:user/emr",
"arn:aws:iam::11111111111:role/EMR_EC2_DefaultRole"
]
},
"Action": "s3:List*",
"Resource": "arn:aws:s3:::atest-bucket/data"
},
{
"Sid": "Stmt1234456",
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::11111111111:user/emr",
"arn:aws:iam::11111111111:role/EMR_EC2_DefaultRole"
]
},
"Action": [
"s3:Get*",
"s3:List*",
"s3:Put*"
],
"Resource": "arn:aws:s3:::atest-bucket/data/*"
}
]
}
请帮我调查一下这个问题。
【问题讨论】:
-
当您说“尝试访问它时”时,您使用了什么具体命令?另外,另一个帐户中的用户/角色有哪些与 S3 相关的权限? (他们需要由他们的自己的帐户授予调用 S3 的权限,并且他们需要通过存储桶策略获得权限。)
标签: amazon-web-services amazon-s3 amazon-iam amazon-emr