Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: ✔️ Шлюз приложений версии 2
Брандмауэр веб-приложений позволяет настраивать ограничения на размер запросов в пределах нижней и верхней границы. Шлюзы приложений Брандмауэры веб-приложений под управлением Core Rule Set 3.2 или более поздней версии имеют больше элементов управления размером запросов и отправки файлов, включая возможность отключить принудительное применение максимального размера для запросов и (или) отправки файлов.
Ограничения
Поле размера тела запроса и ограничение размера загружаемого файла настраиваются в брандмауэре веб-приложения. Поле Максимальный размер тела запроса указывается в килобайтах и контролирует общий лимит размера запроса без учета любых загрузок файлов. Поле «Лимит загрузки файла» указывается в мегабайтах и определяет максимально допустимый размер загрузки файла. Ограничения на размер запроса и размер отправляемого файла см. в статье Ограничения Шлюза приложений.
Для брандмауэров веб-приложений Шлюза приложений версии 2 под управлением Core Rule Set 3.2 или более поздней версии можно отключить применение максимального размера тела запроса и максимального размера отправляемого файла, а брандмауэр веб-приложения больше не отклоняет запрос или отправку файла из-за слишком большого размера. Если в брандмауэре веб-приложения отключено применение максимального размера тела запроса и максимального размера отправляемого файла, максимально допустимый размер определяется ограничениями Шлюза приложений. Дополнительные сведения см. в статье Ограничения Шлюза приложений.
Для загрузки файлов учитываются только запросы с Content-Type of multipart/form-data . Чтобы контент считался загрузкой файла, он должен быть частью составной формы с заголовком имени файла . Для всех остальных типов содержимого применяется ограничение на размер тела запроса.
Замечание
Если вы используете Core Rule Set 3.2 или более поздней версии и у вас есть настраиваемое правило с высоким приоритетом, которое выполняет действия на основе содержимого заголовков, файлов cookie или URI запроса, оно будет иметь приоритет над любыми ограничениями на максимальный размер запроса или максимальный размер отправляемого файла. Эта оптимизация позволяет Брандмауэр веб-приложений запускать пользовательские правила с высоким приоритетом, которые не требуют чтения полного запроса.
Пример: Если у вас есть пользовательское правило с приоритетом 1 (наивысший приоритет), настроенное на разрешение запроса с заголовком xyz, то даже если размер запроса превышает максимально допустимый размер, он будет разрешён до применения ограничения на максимальный размер.
Замечание
Существует ограничение загрузки файла на 4 КБ. Ограничение размера файла не будет применяться до тех пор, пока отправка файла не превысит заданное ограничение плюс этот буфер.
Запросить осмотр кузова
Брандмауэр веб-приложений предлагает параметр конфигурации для включения или отключения проверки тела запроса. По умолчанию включена проверка тела запроса. Если проверка текста запроса отключена, брандмауэр веб-приложения не оценивает содержимое тела HTTP-сообщения. В таких случаях Брандмауэр веб-приложений продолжает применять правила Брандмауэр веб-приложений в отношении заголовков, файлов cookie и URI. Если в брандмауэрах веб-приложений с набором основных правил версии 3.1 (или более ранней версии) проверка текста запроса отключена, поле максимального размера текста запроса неприменимо и не может быть задано.
Для межсетевых экранов веб-приложений Policy, использующих Core Rule Set 3.2 (или более поздней версии), проверку тела запроса можно включать или отключать независимо от ограничений на размер тела запроса и размера загружаемых файлов. Кроме того, брандмауэры для веб-приложений на платформе Core Rule Set 3.2 (или более поздней версии) могут устанавливать предельный объём проверки тела запроса независимо от максимального размера тела запроса. Максимальный предел проверки тела запроса сообщает брандмауэру веб-приложения, насколько глубоко он должен проверять запрос и применять правила; установка меньшего значения для этого поля может повысить производительность брандмауэра веб-приложения, но может позволить непроверенному вредоносному содержимому проходить через брандмауэр веб-приложения.
Для более старых брандмауэров веб-приложений, использующих Core Rule Set 3.1 (или более раннюю версию), отключение проверки текста запроса позволяет отправлять сообщения размером более 128 КБ в Брандмауэр веб-приложений, но текст сообщения не проверяется на наличие уязвимостей. Для межсетевых экранов веб-приложений Policy, работающих на основе Core Rule Set 3.2 (или более поздней версии), можно добиться того же результата, отключив ограничение максимального размера тела запроса.
Когда брандмауэр веб-приложения получает запрос, размер которого превышает ограниченный размер, поведение зависит от режима брандмауэра веб-приложения и используемой версии управляемого набора правил.
- Когда политика брандмауэра веб-приложения находится в режиме предотвращения, брандмауэр веб-приложения регистрирует и блокирует запросы и загрузку файлов, размер которых превышает ограничения.
- Когда политика брандмауэра веб-приложения находится в режиме обнаружения, брандмауэр веб-приложения анализирует содержимое до указанного предела и игнорирует остальное. Если заголовок
Content-Lengthприсутствует и превышает установленный предел размера отправляемого файла, брандмауэр веб-приложения игнорирует все содержимое тела запроса и регистрирует его.
Устранение неполадок
Если вы являетесь клиентом Брандмауэра веб-приложений Шлюза приложений второй версии, использующего Core Rule Set 3.2 или более позднюю версию, и у вас возникают проблемы с запросами или загрузкой файлов, которые неправильно отклоняются из-за превышения максимального размера, или если вы видите, что запросы не проходят полную проверку, вам может потребоваться убедиться, что все значения заданы правильно. С помощью PowerShell или интерфейса командной строки Azure можно проверить, какое значение задано для каждого значения, и при необходимости обновить все значения.
Обеспечить проверку тела запроса
- PowerShell: "RequestBodyCheck"
- CLI: "проверка_тела_запроса"
- Определяет, проверяет ли брандмауэр веб-приложения текст запроса и применяет ли управляемые и настраиваемые правила к трафику тела запроса в соответствии с параметрами политики брандмауэра веб-приложения.
Максимальный предел проверки кузова запроса (KB)
- PowerShell: RequestBodyInspectLimitInKB
- CLI: "request_body_inspect_limit_in_kb" (лимит проверки тела запроса в килобайтах)
- Определяет, насколько глубоко в тело запроса брандмауэр веб-приложения проверяет и применяет управляемые/пользовательские правила. Вообще говоря, вы захотите установить максимально возможное значение, но некоторые клиенты могут захотеть установить более низкое значение для повышения производительности.
Применение ограничения на максимальное количество текстов запросов
- PowerShell: RequestBodyEnforcement
- CLI: "принуждение_тела_запроса"
- Проверяйте, применяет ли брандмауэр веб-приложения максимальное ограничение размера тел запросов; когда оно отключено, он не отклоняет запросы за превышение размера.
Максимальный размер тела запроса (КБ)
- PowerShell: "MaxRequestBodySizeInKB"
- CLI: "max_request_body_size_in_kb" (максимальный размер тела запроса в КБ)
- Определяет, насколько большим может быть текст запроса, прежде чем брандмауэр веб-приложения отклонит его из-за превышения максимального размера.
Установите ограничение на максимальную выгрузку файлов
- PowerShell: FileUploadEnforcement
- CLI: "контроль загрузки файлов"
- Определяет, ограничивает ли брандмауэр веб-приложений максимальный размер загружаемых файлов; Если отключено, он не отклоняет загрузку файлов из-за их размера.
Максимальный размер загружаемого файла (МБ)
- PowerShell: FileUploadLimitInMB
- CLI: лимит_загрузки_файла_в_МБ
- Определяет, насколько большим может быть загружаемый файл, прежде чем брандмауэр веб-приложения отклонит его из-за превышения максимального размера.
Замечание
«Проверка тела запроса» ранее контролировала, было ли проверено тело запроса и применены ли правила, а также было ли применено ограничение максимального размера для тел запросов. Теперь это обрабатывается двумя отдельными полями, которые можно включать/выключать независимо друг от друга.
PowerShell
Вы можете использовать следующие команды PowerShell, чтобы вернуть политику Azure и просмотреть ее текущие параметры.
$plcy = Get-AzApplicationGatewayFirewallPolicy -Name <policy-name> -ResourceGroupName <resourcegroup-name>
$plcy.PolicySettings
Эти команды можно использовать для обновления параметров политики до требуемых значений в полях, связанных с лимитом на проверку и ограничением максимального размера. В следующем примере вы можете заменить "RequestBodyEnforcement" на одно из других значений, которые вы хотите обновить.
$plcy = Get-AzApplicationGatewayFirewallPolicy -Name <policy-name> -ResourceGroupName <resourcegroup-name>
$plcy.PolicySettings.RequestBodyEnforcement=false
Set-AzApplicationGatewayFirewallPolicy -InputObject $plcy
- Получить политику брандмауэра веб-приложения
- Свойства параметров политики
- Класс параметров политики
- Новые параметры политики
Интерфейс командной строки
Вы можете использовать Azure CLI, чтобы вернуть текущие значения для этих полей из параметров политики Azure и обновить поля до нужных значений с помощью этих команд.
az network application-gateway waf-policy update --name <WAF Policy name> --resource-group <WAF policy RG> --set policySettings.request_body_inspect_limit_in_kb='128' policySettings.max_request_body_size_in_kb='128' policySettings.file_upload_limit_in_mb='100' --query policySettings -o table
Выходные данные:
FileUploadEnforcement FileUploadLimitInMb MaxRequestBodySizeInKb Mode RequestBodyCheck RequestBodyEnforcement RequestBodyInspectLimitInKB State
----------------------- --------------------- ------------------------ --------- ------------------ ------------------------ ----------------------------- -------
True 100 128 Detection True True 128 Enabled
Дальнейшие шаги
- После настройки параметров брандмауэра веб-приложения можно узнать, как просматривать журналы брандмауэра веб-приложения. Для получения дополнительных сведений см. Диагностика Application Gateway.
- Дополнительные сведения о безопасности сети Azure