我在网络表单中有一个文本框,管理员用户可以添加要提交的HTML以便输入数据库。
过去,我在提交HTML数据时始终向ValidateRequest="false"
添加Page
以避免验证错误。但是,对于此网站,即使ValidateRequest
设置为false
,我也会收到以下错误:
从中检测到一个潜在危险的Request.Form值 客户端
我听说这与.NET 4安全性有关,但这是一个ASP.NET 3.5应用程序。
为什么我仍然会收到此错误?
答案 0 :(得分:2)
RequestValidation在.Net 4.0中有重大变化。
要解决您的问题,您必须在weh.config中的httpRuntime中将requestValidationMode设置为小于4.0的值,如下所示:
<httpRuntime requestValidationMode="2.0" />
答案 1 :(得分: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