Amazon web services S3没有检测到bucket策略

Amazon web services S3没有检测到bucket策略,amazon-web-services,amazon-s3,Amazon Web Services,Amazon S3,我已经创建了一个AmazonS3存储桶,我想为我所有的公司用户提供访问权限,这意味着任何人都可以访问S3存储桶并下载对象 我已经为IP限制编写了一个Bucket策略: { "Version": "2012-10-17", "Id": "S3PolicyIPRestrict", "Statement": [ { "Sid": "IPAllow", "Effect": "Allow", "Principal": "", "Actio

我已经创建了一个AmazonS3存储桶,我想为我所有的公司用户提供访问权限,这意味着任何人都可以访问S3存储桶并下载对象

我已经为IP限制编写了一个Bucket策略:

{
  "Version": "2012-10-17",
  "Id": "S3PolicyIPRestrict",
  "Statement": [
    {
      "Sid": "IPAllow",
      "Effect": "Allow",
      "Principal": "",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::mybucket/*",
      "Condition": {
        "IpAddress": {
          "aws:SourceIp": [
            "10.0.8.10"
          ]
        }
      }
    }
  ]
}

当我将ACL权限添加为每个人都“读取”时,则只有我能够访问该对象。但桶政策并不适用。任何人也可以从网络外部访问。我做错了什么?

您的bucket策略正在为
10.0.8.10
的源IP地址授予权限。这是一个专用IP地址

然而,AmazonS3是互联网上的一项公共服务。访问Amazon S3时,请求会通过Internet(或至少到Internet的AWS边缘),您的请求似乎来自公共IP地址。因此,政策不允许访问,因为您的地址与政策中的地址不匹配

您应该更改策略以使用公司流量访问Internet时使用的公共IP地址。您可以通过
http://checkip.amazonaws.com


此外,如果您通过Bucket策略授予访问权限,则不应通过ACL授予访问权限。

欢迎使用StackOverflow!请编辑您的问题并向我们展示您的Bucket策略(请随意更改IP地址)。此外,请提供有关您的用户如何访问bucket的详细信息——是否通过web浏览器中的匿名URL、AWS管理控制台等访问bucket?您提供的信息越多,收到有用答案的机会就越大。{“版本”:“2012-10-17”,“Id”:“S3PolicyIPRestrict”,“语句”:[{“Sid”:“IPAllow”,“Effect”:“Allow”,“Principal”:“Action”:“s3:GetObject”,“Resource”:”“arn:aws:s3:::insight.application.log-464413482301-us-east-1/”,“条件”:{“IpAddress”:{“aws:SourceIp”:[“10.0.8.10”,]}}这是我正在使用的策略..我想确保..每个人都可以访问,但在公司网络内..我使用了ip限制。看起来您有到AWS的直接连接/VPN连接,这就是您使用专用ip地址的原因。正确吗?