Что я делаю не так, чтобы ограничить доступ к S3 через IP? - PullRequest
0 голосов
/ 29 августа 2018

У меня есть ведро my_super_bucket со следующим утверждением:

"Statement": [
        {
            "Sid": "Stmt4214214",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:*",
            "Resource": "arn:aws:s3:::my_super_bucket/*",
            "Condition": {
                "IpAddress": {
                    "aws:SourceIp": [
                        "my_super_ip_1",
                        "my_super_ip_2"
                    ]
                }
            }
        }
    ]

Ранее у корзины было общедоступное разрешение для объектов списка, поэтому, поскольку я хочу разрешить только эти два IP-адреса, я удалил эту привилегию. Тем не менее, я все еще могу получить доступ к любому файлу в этом сегменте с другого IP. Для дальнейшего устранения неполадок я предпринял следующие три шага:

  1. Я подумал, что это может быть из-за кеша CloudFront, поэтому попытался получить доступ к файлу напрямую с помощью URL-адреса S3, но все же мог его скачать.
  2. Добавил "NotIpAddress": { "aws:SourceIp": "*"} к условиям, но все еще мог получить доступ к файлам.
  3. Убрано разрешение на чтение объекта для каждого файла. Теперь я не могу получить доступ к файлу, независимо от SourceIP.

Итак, как я могу достичь своей цели - разрешить определенным IP-адресам доступ к любому файлу определенного сегмента? В IRC парень сказал мне, что эти политики применимы только к CLI AWS, но должен быть способ ограничить доступ и через URL, верно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...