MVC用filter做权限过滤
MVC用filter做权限过滤:
1:创建filter类;类需要继承一个接口,并且重写4个方法;如下:
namespace MvcApplication1.Code
{
public class paramFilter:System.Web.Mvc.ActionFilterAttribute
{
public override void OnActionExecuted(System.Web.Mvc.ActionExecutedContext filterContext)
{
base.OnActionExecuted(filterContext);
}
public override void OnActionExecuting(System.Web.Mvc.ActionExecutingContext filterContext)
{
if(filterContext.HttpContext.Request.QueryString["k"]=="go")
{
string retUrl = filterContext.RouteData.GetRequiredString("controller") + "/" + filterContext.RouteData.GetRequiredString("action");
filterContext.HttpContext.Response.Redirect("http://" + filterContext.HttpContext.Request.Url.Host + ":" + filterContext.HttpContext.Request.Url.Port.ToString() + "/" + retUrl);
}
}
public override void OnResultExecuted(System.Web.Mvc.ResultExecutedContext filterContext)
{
base.OnResultExecuted(filterContext);
}
public override void OnResultExecuting(System.Web.Mvc.ResultExecutingContext filterContext)
{
base.OnResultExecuting(filterContext);
}
}
}
注意:其中 filterContext对象是 从页面传过来的。
获取页面controller值的方法是 filterContext.RouteData.GetRequiredString("controller")
获取页面action值的方法是: filterContext.RouteData.GetRequiredString("action")
转到其他页面的方法是: filterContext.HttpContext.Response.Redirect()I
ip: filterContext.HttpContext.Request.Url.Host
端口:filterContext.HttpContext.Request.Url.Port.ToString()
2:在需要过滤的controller上加上一句代码即可:
[Code.paramFilter]
public ActionResult Index()
{
return View();
}
这样就已经结束了,是不是很简单?
MVC用filter做权限过滤相关推荐
- [转]Asp.Net大型项目实践(11)-基于MVC Action粒度的权限管理【续】【源码在这里】(在线demo,全部源码)...
本文转自:http://www.cnblogs.com/legendxian/archive/2010/01/25/1655551.html 接上篇Asp.Net大型项目实践(10)-基于MVC Ac ...
- Asp.net MVC使用Filter解除Session, Cookie等依赖
本文,介绍了Filter在MVC请求的生命周期中的作用和角色,以及Filter的一些常用应用场景. 同时针对MVC中的对于Session,Cookie等的依赖,如何使用Filter解依赖. 如果大家有 ...
- MVC项目中用户权限的限制
MVC项目中用户权限的限制 开发工具与关键技术: MVC 作者:姚智颖 撰写时间:2020/08/16 注释:下面以机订票系统中角色维护功能为例,设置其中不同级别的用户在整个系统中一些功能的访问权限. ...
- 【自然框架】稳定版的Demo——看点二:权限,权限过滤与验证。
建议先看看 上一篇:[自然框架]稳定版beta1--源码下载,Demo说明 下载地址:还是老地方,自然框架的源代码.Demo.数据库.配置信息管理程序下载(2010.01.25更新) 在线演示:htt ...
- 通用数据级别权限的框架设计与实现(3)-数据列表的权限过滤
查看上篇文章通用数据级别权限的框架设计与实现(2)-数据权限的准备工作,我们开始数据列表的权限过滤. 原理:我们在做过滤列表时,根据用户权限自动注入到相关SQL中,实现相关过滤,如果拥有全部权限,则不 ...
- 使用MiniProfiler跟踪MVC + EF + Bootstrap 2 权限管理系统的性能消耗
安装MiniProfiler 在MVC + EF + Bootstrap 2 权限管理系统入门级(附源码)文章中下载了它的源码,调试模式下打开一个页面都要再2.5秒以上,所以使用MiniProfile ...
- SQL Server使用视图做权限控制
问题引入 这天老鸟火急火燎的跑到菜鸟旁边,想必是遇到什么难题了:"现在有这么一个场景,假如有三种角色,并且存在层级关系,他们需要访问同一个数据源表,但是需要做权限控制,使得每种角色只能看到自 ...
- php sql语句过滤,php如何做sql过滤
php如何做sql过滤 SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因是程序没有细致地 ...
- java.securti_springboot集成springsecurity 使用OAUTH2做权限管理的教程
Spring Security OAuth2 主要配置,注意application.yml最后的配置resource filter顺序配置,不然会能获取token但是访问一直 没有权限 WebSecu ...
最新文章
- 前端二十七:四彩边框
- JavaScript知识点总结(二)
- MAC下MongoDB的安装启动及停止
- 计算机无法备份,电脑无法备份怎么办
- BZOJ2795: [Poi2012]A Horrible Poem
- 进程线程之pid,tid
- Monkey命令相关总结
- PreparedStatement 用法
- OpenStack与Tungsten Fabric如何集成丨TF成立大会演讲实录
- visa支付—Springboot
- VMware Workstation下载及安装
- 打开一个vb工程,弹出“visual sourcesafe login“对话框
- idea local history说明
- 操作系统---信号量
- 中国移动北京公司携未来电视、UWA、爱奇艺开启超高清新时代
- 皮肤样本微生物的检测介绍
- 锐龙9 7845HX 和锐龙9 6900HX选哪个 r9 7845HX 和6900HX差距
- workbook 读取excel表格
- Springboot毕设项目博物馆参观预约管理系统gkb2s(java+VUE+Mybatis+Maven+Mysql)
- 使用IDEA运行OnlyOffice的Java示例
热门文章
- 个人总结--关于学习过程中的一些经验心得分享
- violate关键字的理解
- 开源规则引擎比较_开源物联网平台ThingsBoard
- XUI 熟练使用之(三) -----------启动页( SimpleGuideBanner的使用)
- Windows10 任务栏网络图标消失不见的解决办法
- win10任务栏网络连接图标消失的解决办法
- 普元 AppServer 部署时页面提示部署失败,后台报错:Unable to load class org.apache.cxf.ws.policy.AssertionBuilder
- 将ACII码转为浮点数
- 项目经理学习知识体系结构
- Google公布软件网络负载均衡器Maglev