1

我正在使用适用于 S3 的 Amazon PHP SDK 将图像保存到存储桶中。我需要确保添加的每个图像都是公开可见的,但我不想添加列表可访问性。我找不到在存储桶级别设置它的方法,以便它传播到所有上传的图像。

所以,我的问题是,在将图像移动到 S3 后如何设置图像的权限,以便可以在浏览器中查看?

我的代码如下所示:

require_once("aws/aws-autoloader.php");

// Amazon S3
use Aws\S3\S3Client;

// Create an Amazon S3 client object
$s3Client = S3Client::factory(array(
    'key'    => $amazonKey,
    'secret' => $amazonSecret
));

// Register the stream wrapper from a client object
$s3Client->registerStreamWrapper();

// Save Thumbnail
$s3Path = "s3://".$amazonBucket."/".$folderYear."/".$folderMonth."/";
$s3Stream = fopen($s3Path . $thumbnail, 'w');
fwrite($s3Stream,$thumb_content);
@fclose($s3Stream);

图像保存后我只需要帮助,如何确保图像是公开可见的,但存储桶和文件夹没有列出所有内容。

4

1 回答 1

1

您可以使用存储桶策略在存储桶级别进行设置。查看:

http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucketPolicies.html

于 2013-08-26T16:27:44.060 回答