MVC中OnActionExecuting登录与权限验证

OnActionExecuting页面执行前进行,相当于过滤器,只有符合该方法里的条件,才能执行后面的Action, 通常用于:1、统一登陆验证 2、统一权限控制
1、登陆验证(单个控制器验证):
以下为用Session进行判断用户是否登在这里插入图片描述

使用OnActionExecuting过滤器进行判断(若没有登录则重定向到登录页面):
在这里插入图片描述

2、全局(整个项目)过滤器:
使用前的步骤:
(一)先在项目的App_Start(路由)中创建一个类
在这里插入图片描述
并在该类写入过滤器方法
在这里插入图片描述

(二)在项目的Global.asax中注册全局过滤器
在这里插入图片描述
在这里插入图片描述

(三)在项目里添加(第一步里引用类)的文件,并命名为(第一步里引用类方法)的名称,
在此写入全局过滤器的条件
在这里插入图片描述

以下为某项目的权限与登录过滤器:
在这里插入图片描述

该项目是以moduleID :1-5为区域, moduleFarID: 1-5是分别对应moduleID里的子控制器,来建立的
而权限是通过用户角色,来进行权限划分(只针对子控制器,不针对区域):
在这里插入图片描述
在这里插入图片描述

第一种验证方式为在用户登录时去获取:
在这里插入图片描述

以下为Module类的设置:
在这里插入图片描述

以上的查询主要是查询登录用户所担任的角色,再查询该角色所拥有访问的子控制器,
最后再用parseModule子查询去查询出该子控制器所在的区域数据

以下开始进行权限与登录检查:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值