我使用的是AWS SDK + PHP + Symfony2。
有没有办法将公共读取权限分配给我刚上传到Amazon S3 Bucket的整个目录?
我通常用来分配公共读取权限的代码是:
$this->s3->putObjectAcl(
array(
'Bucket' => $this->bucketName,
'Key' => $destinationPath,
'ACL' => CannedAcl::PUBLIC_READ
)
);
但如果$ destinationPath是一个目录,它就不起作用。有没有办法实现这个目标?
答案 0 :(得分:0)
如上所述 urfusion ,您要找的是Bucket Policy。
以下是您可能使用的示例政策:
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"PublicReadGetObject",
"Effect":"Allow",
"Principal": "*",
"Action":["s3:GetObject"],
"Resource":["arn:aws:s3:::examplebucket/*"]
}
]
}