0

我一直在查看文档并用谷歌搜索,但无法弄清楚。

当我想为特定人员授予对特定文件的访问权限时,如何将我的 S3 存储桶设置为私有(即,只有我的 PHP 应用程序可以访问这些文件而没有人可以访问这些文件)并生成过期 URL?

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

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

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

4

1 回答 1

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

于 2013-09-15T06:18:03.590 回答