从客户端(Content="<EM ><STRONG ><U >这是测试这...")中检测到有潜在危险的Request.Form 值。

简介:

说明: 请求验证过程检测到有潜在危险的客户端输入值,对请求的处理已经中止。该值可能指示存在危及应用程序安全的尝试,如跨站点脚本攻击。若要允许页面重写应用程序请求验证设置,请将 httpRuntime 配置节中的 requestValidationMode 特性设置为requestValidationMode="2.0"。示例: <httpRuntime requestValidationMode="2.0" / >。设置此值后,可通过在 Page 指令或 <pages > 配置节中设置 validateRequest="false" 禁用请求验证。但是,在这种情况下,强烈建议应用程序显式检查所有输入。有关更多信息,请参见http://go.microsoft.com/fwlink/?LinkId=153133。 

原以为就像普通的Asp.net页面一样,在头部的Page中加入ValidateRequest="false"就行了,谁知问题还是存在。弄了一个上午,问题终于解决,将解决方法汇总如下:

1,在出现该错误的页面头部的page中加入ValidateRequest="false",那么该页面的任何一次Post提交都不会再验证提交内容的安全性。
如:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Manage/ViewMasterPageEdit.Master"     Inherits="System.Web.Mvc.ViewPage<MvcWebPhoto.Models.Entities.Article >" 

ValidateRequest="false" % >



2,在web.config中的pages节中配置validateRequest="false",如:

<system.web >
<pages validateRequest="false" ></pages > 
</system.web >


但这样,整个项目中的所有Form请求都不再验证提交内容的安全性,极不提倡这种做法。

3,如果你使用的是.Net 3.5,MVC 2.0及更高的版本,那么可以在处理Post方法的Action添加一个特性:[ValidateInput(false)],这样处理就更加有针对性,提高页面的安全性。
如:

[HttpPost]
[ValidateInput(false)]
public ActionResult CatalogEdit(Catalog model)
{
return View();
}



重要
如果你使用的是MVC 3.0,那么你会发现做了以上的设置后还是无效。这是因为你还需要在web.config中做以下设置:

<system.web >
<httpRuntime requestValidationMode="2.0" / >
</system.web >


注意:在MVC项目中,Views文件夹下与主项目下,都会有一个web.config文件。Views下的web.config文件只对Views文件夹下面的文件有效。如果你要处理的页面不在Views下面,那么<httpRuntime requestValidationMode="2.0" / >一定要设置在主项目下的web.config中才有用。

本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/p/6244208.html ,如需转载请自行联系原作者
相关文章
|
1月前
javaWeb服务详解【客户端调用】(含源代码,测试通过,注释) ——Dept实体类
javaWeb服务详解【客户端调用】(含源代码,测试通过,注释) ——Dept实体类
8 0
|
1月前
|
传感器 算法 计算机视觉
基于肤色模型和中值滤波的手部检测算法FPGA实现,包括tb测试文件和MATLAB辅助验证
该内容是关于一个基于肤色模型和中值滤波的手部检测算法的描述,包括算法的运行效果图和所使用的软件版本(matlab2022a, vivado2019.2)。算法分为肤色分割和中值滤波两步,其中肤色模型在YCbCr色彩空间定义,中值滤波用于去除噪声。提供了一段核心程序代码,用于处理图像数据并在FPGA上实现。最终,检测结果输出到&quot;hand.txt&quot;文件。
|
1月前
javaWeb服务详解【客户端调用】(含源代码,测试通过,注释) ——测试
javaWeb服务详解【客户端调用】(含源代码,测试通过,注释) ——测试
8 0
|
1月前
javaWeb服务详解【客户端调用】(含源代码,测试通过,注释) ——Emp实体类
javaWeb服务详解【客户端调用】(含源代码,测试通过,注释) ——Emp实体类
7 0
|
3月前
|
安全 测试技术 5G
你了解客户端测试吗?
你了解客户端测试吗?
|
8月前
|
编解码 大数据 测试技术
客户端性能测试中我们如何选择手机
客户端性能测试中我们如何选择手机
|
4月前
|
NoSQL Java API
SpringBoot【ElasticSearch集成 02】Java HTTP Rest client for ElasticSearch Jest 客户端集成(依赖+配置+增删改查测试源码)推荐使用
SpringBoot【ElasticSearch集成 02】Java HTTP Rest client for ElasticSearch Jest 客户端集成(依赖+配置+增删改查测试源码)推荐使用
58 0
|
4月前
|
Java API
SpringBoot【集成ElasticSearch 01】2种方式的高级客户端 RestHighLevelClient 使用(依赖+配置+客户端API测试源码)
SpringBoot【集成ElasticSearch 01】2种方式的高级客户端 RestHighLevelClient 使用(依赖+配置+客户端API测试源码)
80 0
|
5月前
|
测试技术 Go
【测试平台系列】第一章手撸压力机(二)自定义http客户端配置
上一节简单实现了http发送get请求的客户端,但是在实际工作中,我们会对客户端有各种的设置,也会有各种的请求。
【测试平台系列】第一章手撸压力机(二)自定义http客户端配置
|
5月前
|
存储 算法 异构计算
基于FPGA的ECG心电信号峰值检测和心率计算,包括testbench测试文件和ECG数据转换为coe文件程序
基于FPGA的ECG心电信号峰值检测和心率计算,包括testbench测试文件和ECG数据转换为coe文件程序

热门文章

最新文章