私有存储桶和过期网址

时间:2013-09-14 11:34:09

标签: php amazon-s3

我一直在查看文档并用Google搜索,但是无法理解。

如何设置我的S3存储桶是私有的(即,只有我的PHP应用程序可以访问文件而没有一个文件)并在我想要为特定人员提供特定文件的访问权限时生成过期的URL? / p>

我能够生成经过身份验证的URL,但该地址中显示该文件的地址,当我从没有访问密钥和签名的Web浏览器访问该文件时,该文件仍可下载!

经过身份验证的网址: http://mybucket.s3.amazonaws.com/myfile.jpg?AWSAccessKeyId=thekey&Expires=1378302758&Signature=signaturestring

如果我现在只将地址带到文件中: http://mybucket.s3.amazonaws.com/myfile.jpg, 它仍然可以下载。我需要阻止它!

1 个答案:

答案 0 :(得分:1)

确保您没有附加到该存储桶的存储桶策略,该存储桶策略为每个人提供了读取文件的权限。

同时检查每个文件的ACL并删除所有public-read权限。

查看S3文档以获取更多信息:

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