我正在创建一个策略文档,允许IAM用户将S3转到特定的“博客”目录,在该目录中他们可以创建/编辑/删除文件以及修改存储桶中的文件权限以进行全局读取所以上传的文件可以在博客上公开。这是我到目前为止所遇到的唯一问题是策略是不允许用户修改权限。
如何更新此策略以允许用户修改全局读取权限?
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["s3:ListAllMyBuckets"],
"Resource": "arn:aws:s3:::*"
},
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": "arn:aws:s3:::blog"
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject"
],
"Resource": "arn:aws:s3:::blog/*"
}
]
}
由于
答案 0 :(得分:2)
唯一的问题是该策略不允许用户修改权限。
正确。您仅授予了Put
,Get
和Delete
权限。为了提供操作对象级权限的访问权限,您需要提供 s3:PutObjectAcl
API访问权限。
检查s3:PutObjectAcl IAM Action documentation和S3 PUT Object acl Documentation,详细了解如何利用此API。