【问题标题】:How to enable AWS-S3-security policy for files uploaded in S3如何为 S3 中上传的文件启用 AWS-S3 安全策略
【发布时间】:2018-04-20 16:46:57
【问题描述】:

我正在开发将客户的视频、pdf 和其他机密文件上传到 S3 存储桶的应用程序。

目前,客户可以在视频组件(Angular 组件)中播放这些视频,并且可以在 PDF 组件中读取 PDF 文件。(Angular 组件)

我担心它的安全性。

我希望客户只能播放/阅读他们的视频/pdf。 没有人可以下载/播放/阅读这些东西。

1.) 我怎样才能做到这一点?

2.) 我必须在 S3 存储桶上启用/禁用哪些功能。 (S3 存储桶政策)

3.) 我们没有配置 IAM 角色。我们需要它吗?

我对此一无所知... 如果有人可以指导/提供一些有用的链接,那就太好了。

提前致谢。

【问题讨论】:

    标签: security amazon-s3 file-security


    【解决方案1】:

    我假设每个用户在您的 S3 存储桶中都有自己的文件夹。

    1。 我将在后端处理文件夹和文件,并使用他们的用户 ID 仅向每个用户显示他们应该看到的文件。

    假设您的 S3 存储桶名为inventory,我的用户名是ABC123,应该有一个文件夹,如下所示: s3://inventory/ABC123/ 。 要么 s3://inventory/(你自定义的用户ID)/

    我会根据用户 ID 在我的应用中创建指向 S3 存储桶的 URL。

    当您向用户显示文件时,必须更改浏览器中的 url,这样他们就无法看到文件的真实路径。

    2.

    • 如果您需要访问以前版本的文件,您可以激活版本控制。
    • 访问请求的日志。
    • 文件加密
    • 如果您担心成本,请标记

    3。 (如果您指的是用户的 IAM 角色),如果您通过应用处理对 S3 存储桶的访问,则不需要它。

    【讨论】:

    • 我已经发布了我的答案。再次感谢您的帮助。
    【解决方案2】:

    终于,我得到了答案。

    第一个问题的答案: @Cyrus 在他的回答中提到的是绝对正确的。除了这个答案,我还想再补充几点。

    正如他正确提到的......

    当您向用户显示文件时,浏览器中的 url 必须是 已更改,因此他们无法看到文件的真实路径。

    这给了我关于 CDN(Content Delivery Network) 服务器的提示。

    最后,我们会选择 CDN-S3 组合

    这意味着客户端只会暴露给 CDN url(s)。 (不是 S3 网址)那些将是 预签名 URL(安全以及临时 url。)

    可以从这里了解更多信息:http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-urls.html

    (2) 和 (3) 的答案:正如@Cyrus 提到的那样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-12
      • 1970-01-01
      • 1970-01-01
      • 2013-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多