我在S3上存储用户图像,默认情况下是可读的。
我也需要直接从网上访问图片。
但是,我想防止黑客强行破坏网址并下载我的图片。
例如,我的S3图片网址为http://s3.aws.com/test.png
他们可以进行暴力测试并下载所有内容吗?
我无法将我的存储桶中的项目设置为私有,因为我需要直接从网络访问。
知道怎么预防吗?
答案 0 :(得分:4)
使用良好的安全性不会影响您直接从网络访问的能力"。如果使用了适当的权限,则可以从Web访问Amazon S3中的所有内容。
默认情况下,Amazon S3中的所有内容都是私有的。
然后可以通过多种方式分配访问内容的权限:
最有趣的是预签名网址。这是计算的 URL,允许在有限的时间段内访问Amazon S3对象。应用程序可以生成预签名URL并将链接包含在网页中(例如,作为<img>
标记的一部分)。这样,您的应用程序确定是否允许用户访问对象,并可以限制链接的工作持续时间。
答案 1 :(得分:1)
您应该确保内容安全,并使用Pre-signed URLs仅允许访问您网站的授权访问者。您必须编写一些代码才能使其正常工作,但它是安全的。