在ASP.NET MVC中微软已经提供了如何防止跨域攻击的方法。对于传统Webfrom中使用Handler来接受ajax的Post请求数据,如何来防止XSRF攻击呢。这里给大家提供一个简单地方法,和MVC中类似。
1.首先需要在你的站点中安装如下的nuget包。可以手动复制dll。
Install-Package Microsoft.AspNet.WebPages -Version 2.0.20710
最新版本的Razor是3.0的,安装WebPages的时候,它依赖于Razor,所以对于framework4.0的项目来说,无法安装WebPages最新版本。需要安装2.0版本。
进入微软、亚马逊,谷歌等美国IT企业工作人才项目,起薪40万,百度搜索(MUMCS)
安装完成后,增加了如下几个dll:
2.配置web.config,生成隐藏的token。
需要在system.web节点下增加如下配置:
配置好节点后,需要在.aspx页面的后台代码中增加一个Token生成字段,如果有基类,那么就可以把该部分添加到基类中。
我们增加了属性Token,然后使用AntiForgery.GetHtml()来生成一个隐藏的token。然后在页面中绑定该Token。
3.创建一个接收ajax请求的Handler,加入防止伪造页面提交的代码。
4.创建一个带有Token的Ajax请求。
这样就可以防止你的异步请求被XSRF攻击了。
进入微软、亚马逊,谷歌等美国IT企业工作人才项目,起薪40万,百度搜索(MUMCS)
PS:对于很多站点,会有子域名之类的,或者是一个Cookie多个站点共用,就容易出现懂点技术的用户跨站点去伪造请求。
微软开源了.net的很多代码,如果你想看上面的实现原理,那么可以去下载代码查看。
希望对你有所帮助。
本文链接:ASP.NET WebForm中异步请求防止XSRF攻击的方法,转载请注明。
分享到:
相关推荐
18个本人收集的ASP.NET WebForm项目源码,内部包含数据库文件及使用教程,仅供大家学习参考
平台:VS2010+,Sql Server, ASP.NET 配置更改:更改BPMS.WEB\XmlConfig\Config.xml下的数据库连接字符串 启动:VS IIS Express或建立IIS对应网站(主网站项目BPMS.WEB) 登录: 用户名/密码:admin/0000 用户名/...
Asp.Net webform chart控件多种应用实例
ASP.Net WebForm的发布(图解) http://www.cnblogs.com/iflytek/archive/2013/05/20/3088811.html
Aspnet-ASP.NET-WebForm-Identity-Demo.zip,asp.net-webform-identity-demoasp.net-webform-identity-demo,asp.net是一个开源的web框架,用于使用.net构建现代web应用和服务。asp.net创建基于html5、css和javascript...
以前没用过这东西,百度感觉资源也少,所以做完分享个。只是个练习,勿喷谢谢。题目写的很清楚 Index.aspx是主文件。Select.cs是检索用的字段。tbl_User.cs是表的实体类。ToJson.ashx你懂得。就这几个文件了,再有...
ASP.NET WebForm通用权限系统框架源码 二次开发框架 .net框架 手风琴+树风格 DB_SqlServer 源码其部署 平台:VS2010+,Sql Server, ASP.NET 配置更改:更改BPMS.WEB\XmlConfig\Config.xml下的数据库连接字符...
C#课件,欢迎大家下载使用。有很多有用的东西在里面哦!
这个代码是关于asp.net做异步处理的。没有用ajax,而是用了一些类。 程序中有三个页面,也即三个示例: 示例1.演示异步获取一个网址的内容,处理后显示在OutPut这一Label上 示例2:演示如何异步从数据库查询数据,并...
.net webform aspx通用网上简单水果新鲜商城源码 一、源码特点 采用三层架构进行开发Asp.net webform框架数据库采用Ado.net操作,前端使用HTML css jquery,javascript,ajax,HTML布局, 后端asp.net form,图片上传...
自己做项目需要经过网上学习 做出一个完整的下载粘贴即可用
C# .net webform 项目,运行后地址 无aspx 后缀。完整源码。
NULL 博文链接:https://heisetoufa.iteye.com/blog/342044
学生选课成绩管理系统(asp.net webForm 源码)
将PowerBuilder应用程序发布为ASP.NET WebForm应用程序的最佳实践
asp.net webform for ios(ipa&plist) 测试环境搭建
框架 vs2019 + asp.net webform + echart 数据库 sql server 注意sql server类和access数据库可以使用vs自带的数据库启动,不需要安装庞大的sql安装包。 就业预测系统(主要连接处理学生成绩管理系统的数据的数据...
框架 vs2019 + asp.net webform + sql server 注意sql server类和access数据库可以使用vs自带的数据库启动,不需要安装庞大的sql安装包。 模块介绍 管理员 登陆模块 教材查询模块 领书模块 欠费查询模块 退出模块 ...
swfupload/kindeditor (asp.net webform用户控件)
asp.net实习登录注册,环境Windows10 + VS2015 + 自带LocalDB