肥城龙山网络:专注肥城网站建设、网站开发、网页制作、软件开发等。 24小时服务热线
肥城龙山网络logo

肥城网站建设首页
网站建设
Website
客户案例
Case
软件开发
Advantages
 域名主机
Domain Hosting
 网站推广
E-mail
 服务&支持
Promotion
 联系我们
About Us
网站建设套餐

新闻中心
三层事物代码
利用token防止重复提交问题!!
使用layer.m弹出过程中微信缓存问题的解决办法
html常用特殊字符转义代码
iis 设置网站文件夹或文件读写 编辑 删除权限!!
sql去重复显示其他字段的方法总结
网站开发中Microsoft.Security.Application的使用


在网站开发中程序员要特别处理安全事件,网站安全过滤程序是每个程序员的基本知识,如果你给客户做的网站有漏洞不安全会导致客户资料泄露,重者会造成经济损失。

网站漏洞介绍之:xxs脚本跨站漏洞关于微软安全组件Microsoft.Security.Application的使用。

搜遍百度也没有找到简单易用的中文说明文档。今天肥城网站建设公司肥城龙山网络管理员,给做网站的程序员们介绍下这个英文组件如何使用。

首先是 组件的下载地址:http://www.microsoft.com/en-us/download/details.aspx?id=28589

组件下载后有2.0 3.5 4.0针对不同的.net 版本。针对你的开发环境用哪一个都行。

第一步引用:using Microsoft.Security.Application;

第二步使用环境举例:Microsoft.Security.Application

我们可以在英文说明帮助中看到提供三个类:Encoder Sanitizer UnicodeCharacterEncoder


我们常用的是第一个和第二个

Encoder 类提供很多方法,是过滤html和css js xml等的各种方法

=================================

举例1

  string str = "<a href='http://www.longshannet.com/' title='肥城网站建设'>肥城网站建设</a>龙山网络<script>alert('我是js代码哦');</script>";
       // Response.Write(Sanitizer.GetSafeHtml(str));
        Response.Write(Encoder.UrlEncode(str));


输出结果为:<a href='http://www.longshannet.com/' title='肥城网站建设'>肥城网站建设</a>龙山网络<script>alert('我是js代码哦');</script>
也就是说原文输出,并没有起到html标记的样式,当做一个纯文本输出了,这样很好的防止了脚本攻击。

还有比如:Encoder.UrlEncode()方法可以转义成字符,以至于不会允许脚本。

===========================

举例2:Sanitizer    类是 消毒作用,就是去掉危害的代码比如:文本中带<script ></script>

比如:       Response.Write(Sanitizer.GetSafeHtml(str));

结果是:<html>
<body>
<a title="肥城网站建设">肥城网站建设</a>龙山网络
</body>
</html>

为什么结果还带个html body呢,因为这个方法是以单独的html页面输出的,如果不需要输出单独的页面,那么可以用

这个方法       Response.Write(Sanitizer.GetSafeHtmlFragment(str)); 片段输出方法。

============================================


 
 
公司地址:肥城龙山公园园林局对过  网站备案/许可证号:鲁ICP备14032147号    
肥城龙山网络拥有多年网站建设及开发经验,从事网页设计、网站设计(全套)及制作等,因而网站制作的经验极为丰富。经营范围:肥城网站建设、网站制作、肥城网站设计等。


版权所有:肥城龙山网络科技中心