将 S3 备份限制到组织公共 IP 地址

将 S3 备份限制到组织公共 IP 地址

我在 AWS bucket.test.com 中安装了 s3 bucket,我想从公司公共 IP 获得读写访问权限。我的公司有 3 个公共 IP,我需要将 s3 bucket 限制在这些 IP 地址上,并且它不应从公司外部网络访问。找到我使用的配置,但它不起作用。

{
    "版本":"2008-10-17",
    “ID”:“测试策略”,
    “陈述”: [
        {
            “席德”:“1”,
            "效果": "允许",
            “主要的”: {
                “AWS”:“*”
            },
            “操作”:“s3:GetObject”,
            “资源”:“arn:aws:s3:::bucket01.test.com/*”,
            “健康)状况”: {
                “IP地址”: {
                    “aws:SourceIp”:“publicip1/32”
                },
                “NotIpAddress”:{
                “aws:SourceIp”:“0.0.0.0”
        }
            }
        },
        {
            “席德”:“2”,
            "效果": "允许",
            “主要的”: {
                “AWS”:“*”
            },
            “操作”:“s3:*”,
            “资源”:“arn:aws:s3:::bucket01.test.com/*”,
            “健康)状况”: {
                “IP地址”: {
                    “aws:SourceIp”:“publicip2/32”
                },
                “NotIpAddress”:{
                “aws:SourceIp”:“0.0.0.0/0”
        }
            }
        },
        {
            “席德”:“3”,
            "效果": "允许",
            “主要的”: {
                “AWS”:“*”
            },
            “操作”:“s3:*”,
            “资源”:“arn:aws:s3:::bucket01.test.com/*”,
            “健康)状况”: {
                “IP地址”: {
                    “aws:SourceIp”:“publicip3/32”
                },
                “NotIpAddress”:{
                “aws:SourceIp”:“0.0.0.0/0”
        }
            }
        }
    ]
}

答案1

这在AWS 文档

我对其进行了轻微修改,以显示如何列出多个 IP 地址。请注意,如果您列出“允许”地址,则默认情况下会拒绝其他 IP,并且您不必列出它们或 0.0.0.0/0。

{
"Version": "2012-10-17",
"Id": "S3PolicyId1",
"Statement": [
  {
    "Sid": "IPAllow",
    "Effect": "Allow",
    "Principal": "*",
    "Action": "s3:*",
    "Resource": "arn:aws:s3:::examplebucket/*",
    "Condition": {
       "IpAddress": {"aws:SourceIp": ["54.240.143.0/24", "1.2.3.4/32", "4.3.2.1/32"]}
     } 
  }]
}

相关内容