【问题标题】:How to set bucket policy to allow access for a particular referrer如何设置存储桶策略以允许特定引用者访问
【发布时间】:2017-12-24 03:14:24
【问题描述】:

我们的网站目前正被机器人抓取以访问 S3 上的内容。我正在尝试设置存储桶策略,以便除我们的域之外的任何其他引用者都无法访问 S3 URL。问题是它似乎没有检测到我们的域是引用者。这是我们在下面设置的存储桶策略。

{
    "Version": "2008-10-17",
    "Statement": [
        {
            "Sid": "AllowPublicRead",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::example/*",
            "Condition": {
                "StringNotLike": {
                    "aws:Referer": [
                        "https://www.example.com/*",
                        "http://www.example.com/*",
                        "https://*.example.com/*",
                        "https://*.example.com/*"
                    ]
                }
            }
        }
    ]
}

有谁知道为什么它不能将 www.example.com/blah/blah.html 等识别为推荐人?

当我通过我们的应用程序访问 URL 时,有没有办法查看 AWS 注册为引荐来源网址的内容?这将有助于排除故障。

【问题讨论】:

    标签: amazon-web-services amazon-s3 web-scraping policy bucket


    【解决方案1】:

    来自Bucket Policy Examples - Restricting Access to a Specific HTTP Referrer

    {
      "Version":"2012-10-17",
      "Id":"http referer policy example",
      "Statement":[
        {
          "Sid":"Allow get requests originating from www.example.com and example.com.",
          "Effect":"Allow",
          "Principal":"*",
          "Action":"s3:GetObject",
          "Resource":"arn:aws:s3:::examplebucket/*",
          "Condition":{
            "StringLike":{"aws:Referer":["http://www.example.com/*","http://example.com/*"]}
          }
        }
      ]
    }
    

    如果Referer 字符串与列表中显示的字符串相同,则此策略为允许访问。

    您的费用是使用StringNotLike,因此只有当Referer 不是您列出的人时才允许访问。

    【讨论】:

    • 谢谢约翰。我认为这是我在试验时所做的更改,因为即使您进行了更新,它也无法正常工作。有没有办法通过日志来检测存储桶将什么视为引荐来源?
    • 我不知道如何查看该信息。但是,您可以使用 Policy Simulator
    猜你喜欢
    • 2019-10-07
    • 1970-01-01
    • 1970-01-01
    • 2021-06-28
    • 2018-05-29
    • 2020-12-18
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    相关资源
    最近更新 更多