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做权限过滤相关推荐

  1. [转]Asp.Net大型项目实践(11)-基于MVC Action粒度的权限管理【续】【源码在这里】(在线demo,全部源码)...

    本文转自:http://www.cnblogs.com/legendxian/archive/2010/01/25/1655551.html 接上篇Asp.Net大型项目实践(10)-基于MVC Ac ...

  2. Asp.net MVC使用Filter解除Session, Cookie等依赖

    本文,介绍了Filter在MVC请求的生命周期中的作用和角色,以及Filter的一些常用应用场景. 同时针对MVC中的对于Session,Cookie等的依赖,如何使用Filter解依赖. 如果大家有 ...

  3. MVC项目中用户权限的限制

    MVC项目中用户权限的限制 开发工具与关键技术: MVC 作者:姚智颖 撰写时间:2020/08/16 注释:下面以机订票系统中角色维护功能为例,设置其中不同级别的用户在整个系统中一些功能的访问权限. ...

  4. 【自然框架】稳定版的Demo——看点二:权限,权限过滤与验证。

    建议先看看 上一篇:[自然框架]稳定版beta1--源码下载,Demo说明 下载地址:还是老地方,自然框架的源代码.Demo.数据库.配置信息管理程序下载(2010.01.25更新) 在线演示:htt ...

  5. 通用数据级别权限的框架设计与实现(3)-数据列表的权限过滤

    查看上篇文章通用数据级别权限的框架设计与实现(2)-数据权限的准备工作,我们开始数据列表的权限过滤. 原理:我们在做过滤列表时,根据用户权限自动注入到相关SQL中,实现相关过滤,如果拥有全部权限,则不 ...

  6. 使用MiniProfiler跟踪MVC + EF + Bootstrap 2 权限管理系统的性能消耗

    安装MiniProfiler 在MVC + EF + Bootstrap 2 权限管理系统入门级(附源码)文章中下载了它的源码,调试模式下打开一个页面都要再2.5秒以上,所以使用MiniProfile ...

  7. SQL Server使用视图做权限控制

    问题引入 这天老鸟火急火燎的跑到菜鸟旁边,想必是遇到什么难题了:"现在有这么一个场景,假如有三种角色,并且存在层级关系,他们需要访问同一个数据源表,但是需要做权限控制,使得每种角色只能看到自 ...

  8. php sql语句过滤,php如何做sql过滤

    php如何做sql过滤 SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因是程序没有细致地 ...

  9. java.securti_springboot集成springsecurity 使用OAUTH2做权限管理的教程

    Spring Security OAuth2 主要配置,注意application.yml最后的配置resource filter顺序配置,不然会能获取token但是访问一直 没有权限 WebSecu ...

最新文章

  1. 前端二十七:四彩边框
  2. JavaScript知识点总结(二)
  3. MAC下MongoDB的安装启动及停止
  4. 计算机无法备份,电脑无法备份怎么办
  5. BZOJ2795: [Poi2012]A Horrible Poem
  6. 进程线程之pid,tid
  7. Monkey命令相关总结
  8. PreparedStatement 用法
  9. OpenStack与Tungsten Fabric如何集成丨TF成立大会演讲实录
  10. visa支付—Springboot
  11. VMware Workstation下载及安装
  12. 打开一个vb工程,弹出“visual sourcesafe login“对话框
  13. idea local history说明
  14. 操作系统---信号量
  15. 中国移动北京公司携未来电视、UWA、爱奇艺开启超高清新时代
  16. 皮肤样本微生物的检测介绍
  17. 锐龙9 7845HX 和锐龙9 6900HX选哪个 r9 7845HX 和6900HX差距
  18. workbook 读取excel表格
  19. Springboot毕设项目博物馆参观预约管理系统gkb2s(java+VUE+Mybatis+Maven+Mysql)
  20. 使用IDEA运行OnlyOffice的Java示例

热门文章

  1. 个人总结--关于学习过程中的一些经验心得分享
  2. violate关键字的理解
  3. 开源规则引擎比较_开源物联网平台ThingsBoard
  4. XUI 熟练使用之(三) -----------启动页( SimpleGuideBanner的使用)
  5. Windows10 任务栏网络图标消失不见的解决办法
  6. win10任务栏网络连接图标消失的解决办法
  7. 普元 AppServer 部署时页面提示部署失败,后台报错:Unable to load class org.apache.cxf.ws.policy.AssertionBuilder
  8. 将ACII码转为浮点数
  9. 项目经理学习知识体系结构
  10. Google公布软件网络负载均衡器Maglev