Рейтинг:1

Политика S3 для разрешения по IP не может быть изменена

флаг ua

У нас есть корзина S3 с содержимым веб-сайта, которое доступно для публики через прокси-кеш. Доступ к корзине ограничен IP-адресами, используемыми прокси. Это все работает нормально.

Недавно к прокси были добавлены новые IP-адреса, но мы не можем добавить их в политику. Непосредственное редактирование политики дает «отказ в доступе» независимо от того, какие разрешения есть у пользователя. Мы обнаружили, что можем обойти это, временно разблокировав публичный доступ к корзине. Однако, если мы добавим новые IP-адреса, после повторной блокировки общего доступа мы обнаружим, что все запросы блокируются. Если мы вернем изменения в политику обратно к исходному списку IP-адресов, она снова заработает.

Политика довольно проста и выглядит так (отредактировано для конфиденциальности):

{
    «Версия»: «2012-10-17»,
    «Идентификатор»: «мое ведро»,
    "Заявление": [
        {
            "Сид": "IPAllow",
            «Эффект»: «Разрешить»,
            "Главный": "*",
            "Действие": "s3:*",
            "Ресурс": "arn:aws:s3:::my-bucket/*",
            "Условие": {
                "Айпи адрес": {
                    "aws: Исходный IP": [
                        "23.235.32.0/20",
                        "43.249.72.0/22",
                        "103.244.50.0/24",
                        "103.245.222.0/23",
                        "103.245.224.0/24",
                        "104.156.80.0/20",
                        "140.248.64.0/18",
                        "140.248.128.0/17",
                        "146.75.0.0/17",
                        "151.101.0.0/16",
                        "157.52.64.0/18",
                        "167.82.0.0/17",
                        "167.82.128.0/20",
                        "167.82.160.0/20",
                        "167.82.224.0/20",
                        "172.111.64.0/18",
                        "185.31.16.0/22",
                        "199.27.72.0/21",
                        "199.232.0.0/16",
                        "2a04:4e40::/32",
                        "2a04:4e42::/32"
                    ]
                }
            }
        }
    ]
}
флаг ua
После долгих проб и ошибок кажется, что ничего не получается, когда у нас есть 2 диапазона IPv6 в конце списка.
флаг cn
Это звучит как ускользающая ошибка или ошибка для меня!
флаг cn
Какая сетевая маска была у диапазонов IPv6?
флаг ua
@ shearn89 - я обновил вопрос, указав фактические используемые IP-адреса. Он взят из списка общедоступных IP-адресов Fastly.
Рейтинг:0
флаг cn

Я думаю, вы можете столкнуться с это.

Я считаю, что если у вас есть большой список IP-адресов, и у тебя есть заблокировать публичный доступ включен на уровне учетной записи, то вы столкнетесь с этим пограничным случаем.

Когда BPA включен, S3 проверяет политики, чтобы люди не разрешали 0/0 или похожие.Для достаточно больших диапазонов IP-адресов или списков проверки, которые S3 использует за кулисами для определения «общедоступности», будут иметь слишком широкий диапазон для проверки, и время ожидания или ошибка.

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

флаг ua
Я обновил вопрос. У нас есть 21 диапазон. Мы обнаружили, что удаление последнего позволило ему работать, поэтому мы подумали, что, возможно, 2 IPv6 вызвали проблему, но, может быть, проблема в том, что у вас не может быть больше 20? Все это кажется действительно ужасным выбором дизайна со стороны AWS, если у вас не возникает проблем с синтаксисом при сохранении политики.
флаг ua
На самом деле, у нас было около 17-18 до этого, и добавление одного IPv6 в одном тесте, казалось, приводило к сбою.
флаг cn
Я думаю, что `/32` IPv6 является пределом для IPv6, поэтому проблема заключается в наличии нескольких диапазонов IPv6. Я бы посоветовал обратиться в службу поддержки AWS, если она у вас есть, чтобы поднять тикет — возможно, дополнительная обратная связь, которая может помочь прояснить ситуацию.
флаг cn
Я подозреваю, что если бы у вас было только 2 диапазона IPv6 и не было бы IPv4, вы все равно столкнулись бы с проблемой, это не проблема длины списка, а проблема разрешенного размера диапазона!

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.