Исключение проверки даже при ValidateRequest = "false" - PullRequest
1 голос
/ 08 ноября 2011

У меня есть текстовое поле в веб-форме, где администратор может добавить HTML для отправки в базу данных.

В прошлом я всегда добавлял ValidateRequest="false" к Pageпри отправке данных HTML, чтобы избежать ошибки проверки.Однако на этом веб-сайте даже при ValidateRequest, установленном на false, я получаю следующую ошибку:

Потенциально опасное значение Request.Form обнаружено клиентом

Я слышал, что это связано с безопасностью .NET 4, но это приложение ASP.NET 3.5.

Почему я все еще получаю эту ошибку?

Ответы [ 2 ]

2 голосов
/ 22 декабря 2011

RequestValidation имеет значительные изменения в .Net 4.0.

Возьмите много по: http://msdn.microsoft.com/en-us/library/system.web.configuration.httpruntimesection.requestvalidationmode(VS.100).aspx

Чтобы решить вашу проблему, вам нужно установить значение requestValidationMode меньше чем 4,0 в httpRuntime в weh.config следующим образом:

<httpRuntime requestValidationMode="2.0" />
0 голосов
/ 11 июля 2019

Если вы нервничаете по поводу возврата запроса на .net 2 - просто добавьте флаг местоположения в веб-конфигурацию (наряду с установкой ValidateRequestMode = "Disabled" в текстовом поле, в котором вы хотите разрешить специальные символы). Настройка местоположения в web.config выглядит следующим образом:

  <location path="login.aspx">
    <system.web>
      <httpRuntime requestValidationMode="2.0" />
    </system.web>
  </location>

См. Отличную статью и комментарии относительно этого здесь: https://weblog.west -wind.com / posts / 2010 / Aug / 19 / RequestValidation-Changes-in-ASPNET-40

...