1

我在 Web 表单中有一个文本框,管理员用户可以在其中添加要提交的 HTML 以进入数据库。

过去,我总是在提交 HTML 数据时添加ValidateRequest="false"Page避免验证错误。但是,使用此网站,即使ValidateRequest设置为false,我也会收到以下错误:

从客户端检测到潜在危险的 Request.Form 值

我听说这与 .NET 4 安全性有关,但这是一个 ASP.NET 3.5 应用程序。

为什么我仍然收到此错误?

4

2 回答 2

2

RequestValidation 在 .Net 4.0 中发生了重大变化。

采取很多措施:http: //msdn.microsoft.com/en-us/library/system.web.configuration.httpruntimesection.requestvalidationmode (VS.100).aspx

要解决您的问题,您必须在 weh.config 中的 httpRuntime 中将 requestValidationMode 设置为小于 4.0 的值,如下所示:

<httpRuntime requestValidationMode="2.0" />
于 2011-12-22T16:12:53.990 回答
0

如果您对将请求验证设置回 .net 2 感到紧张 - 只需在 Web 配置中添加一个位置标志(以及在您希望允许特殊字符进入的文本框中设置 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

于 2019-07-11T06:30:25.820 回答