首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >下载的亚马逊s3如何处理安全性

下载的亚马逊s3如何处理安全性
EN

Stack Overflow用户
提问于 2012-10-19 04:51:01
回答 3查看 7.8K关注 0票数 10

我正在构建一个网络应用程序,并正在研究使用亚马逊S3来存储用户上传。

我担心的是,我不希望用户A看到他上传的文档的下载链接是urltoMyS3/doc1234.pdf,然后尝试urltoMyS3/doc1235.pdf并获取另一个用户的文档。

我能想到的唯一方法是只允许web应用程序连接到S3,然后检查用户是否有权访问web应用程序上的文件,让web应用程序下载文件,然后将其提供给客户端。这种方法的问题是,应用程序必须首先下载文件,这将不可避免地减慢用户的下载过程。

亚马逊S3通常是如何处理用户文件的?或者只是在文件不应该公开的情况下通常不使用它?有没有其他类似的服务?

谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-10-19 04:58:05

您可以实现Query String Authentication,它将解决您的问题。

查询字符串身份验证对于允许HTTP或浏览器访问通常需要身份验证的资源非常有用。查询字符串中的签名保证了请求的安全。查询字符串身份验证请求需要过期日期。您可以使用纪元或UNIX时间(自1970年1月1日以来的秒数)指定任何未来的过期时间。

票数 8
EN

Stack Overflow用户

发布于 2012-10-19 05:02:16

您可以通过生成适当的链接来执行此操作,请参阅以下内容

https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html#RESTAuthenticationQueryStringAuth

票数 4
EN

Stack Overflow用户

发布于 2012-10-19 06:54:10

如果有时间限制的身份验证不适用于(如其他答案中所建议的)。您可以考虑实现像s3fs这样的工具来将S3存储桶挂载为web应用程序服务器上的驱动器。通过这种方式,您可以简单地进行身份验证,然后将文件直接提供给用户,而他们根本不知道文件驻留在S3中。类似地,您可以简单地将上传的文件直接写入此s3fs挂载。

S3fs还允许您在计算机上配置S3目录的本地缓存,以加快访问速度。

这在集群web服务器环境中也可以很好地工作,因为您可以让每个服务器挂载s3fs驱动器,并在其上独立执行/读/写。

A link with more info

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12963534

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档