只能通过ajax访问S3文件

时间:2014-03-20 16:12:40

标签: amazon-web-services amazon-s3 cors

我想使用S3来存储用户上传的excel文件 - 显然我只希望该用户可以访问该S3文件。

现在我的应用程序通过检查用户是否正确,然后通过AJAX点击URL https://s3.amazonaws.com/datasets.mysite.com/1243来完成此操作。我可以使用CORS仅从https://www.mysite.com允许此AJAX。

但是,如果您只需在浏览器中输入https://s3.amazonaws.com/datasets.mysite.com/1243,就可以获得任何文件:P

如何阻止S3直接提供文件,只允许通过ajax(我已经用CORS控制访问权限)来提供它?

1 个答案:

答案 0 :(得分:1)

它不是关于AJAX,而是关于权限和授权。

首先,您的存储桶应该是私有的,而不是它们当前可见的状态。

然后,为了让您的用户进行连接,您需要在AWS世界中创建一个名为S3预签名请求的临时下载链接。

您在后端生成它们,这是java sample

享受, [R