AWS S3存储桶策略白名单

dmn0972

我有一个存储桶策略,可将我的IP范围列入AWS白名单。我有一台运行Packer构建作业的EC2服务器,该服务器试图从存储桶中拉出一个对象403 Forbidden,但是即使运行该作业的EC2服务器的IP显然在白名单范围内,我也遇到了错误。即使wget从该CIDR范围内的计算机运行我也会遇到相同的错误。我很困惑为什么会这样。该政策似乎还不错。以下是我的存储桶策略,服务器的IP和错误:

Bucket Policy:

{
    "Version": "2012-10-17",
    "Id": "S3PolicyId1",
    "Statement": [
        {
            "Sid": "IPAllow",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": [
                "arn:aws:s3:::xxxxxxx",
                "arn:aws:s3:::xxxxxxx/*"
            ],
            "Condition": {
                "IpAddress": {
                    "aws:SourceIp": [
                        "10.x.x.x/12"
                    ]
                }
            }
        }
    ]
}

Server IP:

10.x.x.x/32

Error:

ui,message,    amazon-ebs:     "msg": "Error downloading 
https://s3.amazonaws.com/xxxxx/yyyy.zip to C:\\temp\\xxx.zip Exception 
calling \"DownloadFile\" with \"2\" argument(s): \"The remote server 
returned an error: (403) Forbidden.\""
约翰·罗滕斯坦

Amazon S3位于Internet上。

因此,在与S3通信时,您的系统将使用公共IP地址

但是,您的策略仅包含私有IP地址这就是为什么它不起作用。

您的选择是:

  • 修改策略中使用的公网IP地址,如果你的情况是在一个私人子网的实例(S),或NAT网关的公网IP地址,
  • 创建将VPC直接连接到Amazon S3网关VPC端点然后,您可以配置仅通过VPC端点接受流量的存储桶策略。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章