【问题标题】:AWS S3 how to allow acces only from specific domain?AWS S3 如何只允许来自特定域的访问?
【发布时间】:2021-12-25 09:51:46
【问题描述】:

我会提供视频,但只能来自我自己的域。您认为可以使用 AWS S3 进行设置吗?或者无论如何,这种知识产权保护是不可能的。如果网站上有资源,人们无论如何都可以下载它,对吧?!

如果是这种情况,我应该阻止列出存储桶并将盐放在文件名中吗?

【问题讨论】:

  • 请注意,这种类型的安全性(使用aws:Referer安全性很差referer 很容易伪造,因此它不应该用于您认为机密的任何数据。最好通过登录身份验证实现安全性,然后仅通过Amazon S3 pre-signed URL 提供对文件的访问,这是一个提供对私有对象的临时访问的限时 URL。

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


【解决方案1】:

为此,您需要一个自定义策略。

{
  "Version":"2021-11-13",
  "Id":"White list a specific http-referrer",
  "Statement":[
    {
      "Sid":"Allow get requests originating from www.giuseppemandato.com",
      "Effect":"Allow",
      "Principal":"*",
      "Action":"s3:GetObject",
      "Resource":"arn:aws:s3:::BUCKET_NAME/*",
      "Condition":{
        "StringLike":{"aws:Referer":["http://www.giuseppemandato.com/*","http://giuseppemandato.com/*"]}
      }
    }
  ]
}

您可以通过最终声明 Effect: Deny 来翻转它,并忽略来自给定域的任何请求。


【讨论】:

  • eternal2020 是您的存储桶名称吗?
猜你喜欢
  • 1970-01-01
  • 2021-10-09
  • 1970-01-01
  • 2014-01-06
  • 2018-03-08
  • 2018-10-13
  • 2012-06-03
  • 2020-11-30
  • 2018-05-07
相关资源
最近更新 更多