IIS 7 Плохой ответ на запрос, если в URL существует% 0A - PullRequest
5 голосов
/ 02 сентября 2011

У меня есть приложение, которое должно было принимать небезопасные символы от Salesforce. Это% 0A и% 0D (пока что ...), и они не работают.

Я установил allowDoubleEscaping на true, requestValidationMode на 2.0, requestPathInvalidCharacters на BLANK, relaxedUrlToFileSystemMapping на true и maxRequestLength на 1024.

Это не сработало. Затем я попытался установить пользовательскую ошибку 400 для перенаправления на ту же страницу, не передавая данные, которые отправлял Salesforce. Также не работал.

Затем я попытался сделать то же самое в разделе «Страницы ошибок IIS 7», но он все еще не работал.

Как я могу:

  1. Получить приложение для приема символов?
  2. Или заставить приложение / IIS перенаправить на ту же страницу для ручного ввода?

Все это находится в приложении ASP.NET MVC 3, но я сомневаюсь, что это имеет значение, потому что, вероятно, IIS останавливает его, прежде чем он даже вызывает среду выполнения ASP.NET.

Буду признателен за помощь. Заранее спасибо!

Ответы [ 3 ]

1 голос
/ 02 сентября 2011

Где вы, вероятно, хотите посмотреть, находится в диспетчере IIS, щелкните по узлу вашего сервера (или узла веб-сайта) и найдите значок Request Filtering.Перейдите на вкладку URL, и здесь вы можете либо разрешить определенные URL-адреса всегда, либо изменить общий способ фильтрации URL-адресов.Я уверен, что эти настройки также доступны в разделе файла web.config, но я не знаю, какие будут все элементы и атрибуты настроек (я уверен, что вы могли бы легко выполнить поиск и найти их).

Возможно, вам придется бороться за ASP.NET после того, как вы исправите это.

0 голосов
/ 22 декабря 2016

Может быть, уже слишком поздно, но для меня это сработало, изменив настроенные исключения с помощью параметра реестра AllowRestrictedChars (как описано в https://support.microsoft.com/en-us/kb/820129). Значение по умолчанию 0, я изменил его на 1. Если ненулевой, Http .sys принимает шестнадцатеричные символы в URL запроса, которые декодируются в диапазоны U + 0000 - U + 001F и U + 007F - U + 009F.

0 голосов
/ 02 сентября 2011

Проверьте настройки URLScan.http://learn.iis.net/page.aspx/476/common-urlscan-scenarios/

Возможно, вы указали это в разделе [DenyUrlSeptions]?

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