从公共S3存储桶获取图像的难度很大?

时间:2017-10-08 00:32:46

标签: amazon-web-services amazon-s3

我想使用S3来存储用户上传的图像。任何人都应该可以看到一些图像,如个人资料图片和其他缩略图。但是,我还希望在图像被发布的组中的用户可以看到一些图像"发布"到。

我的应用程序将处理所有逻辑,以决定某个用户是否可以访问该图像。

我的问题是:使用公共S3存储桶和我的应用程序控制图像的可见性,有人看到他们通常无法访问的图像有多难?

有没有更好的方法来设置S3存储桶以满足这些要求?

感谢。

1 个答案:

答案 0 :(得分:2)

最好的方法是:

  • 不授予对Amazon S3中任何图像/对象的公共访问权限
  • 您的申请始终决定是否允许他们访问
  • 对于允许访问图片的用户,请创建 Amazon S3预签名网址,这是一个限时访问该对象的URL。

您的应用程序可以使用几行代码生成预签名的URL,而无需调用AWS。

这样,您的所有安全性都由应用程序维护,而不是有选择地公开某些对象,并且人们无法获得对对象的未授权访问。