当系统中登录用户的角色和权限改变时的处理方法

一、当登陆在线的用户的角色的权限改变时处理:

1.      登陆时将用户的所有权限放入session之中:

 

 

2.      filter中加入判断信息:动态去数据库查询当前用户的权限和session中的权限的集合大小进行比较,不一致,移除session中的旧权限,将新权限赋值给session

 

3. 在页面需要进行权限判断的地方设置判断:当新权限表不存在某个菜单连接的时候,在页面点击的时候,会提示已经没有权限了;

 

4.  注意:在filter中注入service层,需要在springbean容器中进行注入: 之后在filter引用: 

 

 

二、  当用户被类似管理员的用户更改了角色需要提示用户角色已经改变,跳到登陆页面;

1.动态查询当前数据库中该用户的角色id和修改页面传来的角色id是否一致,如果不一致,设置relogin这个字段为1;数据库中relogin字段的值被设置为1;表示改变;

 2.在filter中加入过滤监听:如果isrelogin为1,跳到登陆页面;

 

 

 

3.在登陆后台逻辑中:将relogin字段值设置为0

 

 

 

5.流程如下:假设用户被修改了角色,它点击页面链接,经过filter判断退出系统重新跳到登陆页面,登陆时将relogin设置为0,然后以新的角色登陆到系统中。

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值