亚马逊网络服务 S3 访问被看似良好的 IAM 政策拒绝
Amazon Web Service S3 Access Denied with seemingly good IAM policy
以下 AWS 策略旨在绑定到 IAM 组,然后添加到用户。这将授予组中的每个用户访问 Amazon S3 上他们自己的文件夹的权限。
现在的问题是,使用此策略,用户在他们自己的文件夹中仍然会被拒绝访问,他们无法列出存储桶或执行任何其他操作。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListAllMyBuckets",
"s3:GetBucketLocation"
],
"Resource": "arn:aws:s3:::*"
},
{
"Effect": "Allow",
"Action": "s3:ListBucket",
"Resource": "arn:aws:s3:::bucketname",
"Condition": {
"StringLike": {
"s3:prefix": [
"",
"home/",
"home/${aws:username}/"
]
}
}
},
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::bucketname/home/${aws:username}",
"arn:aws:s3:::bucketname/home/${aws:username}/*"
]
}
]
}
我最终想要的是用户能够从他们自己的文件夹中放置和获取文件,但看不到任何其他文件夹或存储桶,但这似乎无法通过此策略实现。
想法?
显然应用政策最多需要几分钟,政策现在可以正常验证。
以下 AWS 策略旨在绑定到 IAM 组,然后添加到用户。这将授予组中的每个用户访问 Amazon S3 上他们自己的文件夹的权限。
现在的问题是,使用此策略,用户在他们自己的文件夹中仍然会被拒绝访问,他们无法列出存储桶或执行任何其他操作。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListAllMyBuckets",
"s3:GetBucketLocation"
],
"Resource": "arn:aws:s3:::*"
},
{
"Effect": "Allow",
"Action": "s3:ListBucket",
"Resource": "arn:aws:s3:::bucketname",
"Condition": {
"StringLike": {
"s3:prefix": [
"",
"home/",
"home/${aws:username}/"
]
}
}
},
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::bucketname/home/${aws:username}",
"arn:aws:s3:::bucketname/home/${aws:username}/*"
]
}
]
}
我最终想要的是用户能够从他们自己的文件夹中放置和获取文件,但看不到任何其他文件夹或存储桶,但这似乎无法通过此策略实现。
想法?
显然应用政策最多需要几分钟,政策现在可以正常验证。