[英]Hosting static images in AWS S3
我正在整合Web应用程序用户的功能,使其能够将图像上传到我的网站。 我想将这些图像存储在一个AWS S3存储桶中,但是我需要谨慎对待隐私,并确保只有有权访问这些文件的人员才能看到它们。
用户应该可以通过<img src="s3_link">
访问这些文件,但不能直接访问存储桶或列出其中的对象。
我可以通过public
该存储桶来完成此操作,但这似乎很危险。
如何设置适当的存储桶策略,以允许将这些图像通过<img>
标签加载到网页上?
S3支持预签名URL 。 它们可用于限制对特定用户的访问。
另请: 与他人共享对象
您也许可以使用类似https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-4 (限制访问特定的HTTP引荐来源网址)。
由于S3是基本的CND,没有即时创建/授予权限的能力,并且您希望<img />
标签直接从S3抓取内容,因此要确保完全控制是非常困难的。
如果您尝试限制下载,则需要设置一些基本逻辑,以授予用户某种类型的访问令牌,这些令牌将在用户请求下载内容时提供(需要使用lambda脚本/ DB或可以拉图片下来,然后在调用方通过身份验证后将其投放)。
听起来您需要经过身份验证的用户才能通过API请求对内容的访问,并传递一个Authorization令牌,然后该API将验证他们是否有权访问下拉请求的内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.