SharePoint的web.config文件中的validateRequest

这是个web.config中的pages的一个属性.

位置在

<configuration>

            <system.web>

                                <pages validateRequest ="false">

                                </pages>

            </system.web>

<configuration>

从.net framework 1.1 开始, 这个元素的默认值是TRUE. 并且在machine.config中, 默认值也是TRUE.

该元素可以用来预防脚本注入攻击(script-injection attacks), 即客户端脚本或HTML可以能在未预知的情况下发送给服务器. 如果该值设置为FALSE, 那么用户的应用程序会有风险, 详情参考http://support.microsoft.com/kb/821343.

有些应用程序把validate request属性设置为FALSE了, 那么, 应用程序本身应该处理并预防脚本注入攻击. 详情请参考下面了两篇文章.

http://msdn.microsoft.com/en-us/library/950xf363(vs.71).aspx

http://technet.microsoft.com/en-us/library/cc262849.aspx#section12

正如大家打开一个新建的SharePoint的web application的web.config看到的那样, 这个值是FALSE.

因为, validate request选项会组织包括XML标签( <A-Z, <!, </, &#, <? )的请求. 而SharePoint的请求需要这些标签来描述CAML查询, 或实现rich text编辑器等功能.

所以, SharePoint的validate request这个选项值为False, 不要乱改哦.

原文地址:https://www.cnblogs.com/awpatp/p/2130646.html