回到 S3,我的存储桶中有图像的 URL,我将在我的应用程序中呈现这些图像,但它们被设置为私有。当我尝试单击该链接时,它显示“访问被拒绝”。当我将链接的设置更改为公共时,它会通过,但是我读到公共访问并不是最安全的事情。所以这本质上是一个由两部分组成的问题
1) 存储桶中的公共和私有链接/对象有什么区别?
2)如何使我自己和我的用户都可以访问我的存储桶中的私有链接/对象?
私有对象需要身份验证;公共对象则不然。
关于您的评论“公共访问不是最安全的事情”,在决定是否公开 S3 对象时,您通常需要考虑以下几点:
- [主要] 可以吗anyone下载它?如果对象的内容是您不应该与世界共享的内容,例如用户的家庭照片,那么答案是“不”。
- [次要]您是否要在每次未知人员下载对象时付费?作为存储桶所有者,您需要为数据传出付费(除非您选择“请求者付费”,在这种情况下请求者需要进行身份验证)。
至少有两种方法可以实现privateS3 对象可供您的用户使用,但全世界都无法访问它们:
- 对对象使用有时间限制的预签名 URL(请参阅本文 http://docs.aws.amazon.com/AmazonS3/latest/dev/ShareObjectPreSignedURL.html)
- 代理对象自行下载,以便对对象的所有请求都发送到您的应用程序服务器,因此可以限制为经过身份验证的会话。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)