当系统中登录用户的角色和权限改变时的处理方法
2016-11-17 18:25
1091 查看
一、当登陆在线的用户的角色的权限改变时处理:
1. 登陆时将用户的所有权限放入session之中:
2. 在filter中加入判断信息:动态去数据库查询当前用户的权限和session中的权限的集合大小进行比较,不一致,移除session中的旧权限,将新权限赋值给session;
3. 在页面需要进行权限判断的地方设置判断:当新权限表不存在某个菜单连接的时候,在页面点击的时候,会提示已经没有权限了;
4. 注意:在filter中注入service层,需要在spring的bean容器中进行注入:
之后在filter引用:
二、 当用户被类似管理员的用户更改了角色:需要提示用户角色已经改变,跳到登陆页面;
1.动态查询当前数据库中该用户的角色id和修改页面传来的角色id是否一致,如果不一致,设置relogin这个字段为1;数据库中relogin字段的值被设置为1;表示改变;
2.在filter中加入过滤监听:如果isrelogin为1,跳到登陆页面;
3.在登陆后台逻辑中:将relogin字段值设置为0:
5.流程如下:假设用户被修改了角色,它点击页面链接,经过filter判断退出系统重新跳到登陆页面,登陆时将relogin设置为0,然后以新的角色登陆到系统中。
相关文章推荐
- 通用权限管理系统组件回答用户的常用问题:操作权限、用户角色、数据权限的解决方法
- asp.net2.0 站点登录,导航与权限管理,角色及用户信息存储于SQL2000的的方法。
- Num54 boss08(添角色用户 & 权限用户分页 & 授权方法 &缓存权限数据&登录用户展示)
- MIS系统用户角色权限设计
- 系统用户权限与角色分析
- Oracle sys和system用户、sysdba 和sysoper系统权限、sysdba和dba角色的区别
- SQL2005 "user" islock 用户不能正常登录的处理方法
- Sys和system用户、sysdba 和sysoper系统权限、dba角色的区别(转载)
- Oracle用户、角色、权限和系统资源管理常用操作
- 用户sa登录失败,该用户与可信sql server连接无关联 问题处理方法
- linux禁止用户登录系统的方法
- Linux系统下查看已经登录用户并踢出的方法
- SQL2005 sa islock 用户不能正常登录的处理方法
- SQL语句创建登录名,数据库用户,数据库角色及分配权限:
- Linux 系统的单用户模式、修复模式、跨控制台登录在系统修复中的运用及突破root密码的方法
- RedGlovePermission 权限管理系统源码(支持自定义权限、模块,支持角色权限,用户独立权限以及多角色权限)
- SQL2005 sa Islock 用户不能正常登录的处理方法
- SQL2005 sa islock 用户不能正常登录的处理方法
- C# B/S程序中出现“异常详细信息: System.Data.SqlClient.SqlException: 用户 'XXX/ASPNET' 登录失败。”的处理方法
- SQL2005 sa Islock 用户不能正常登录的处理方法