• -------------------------------------------------------------
  • ====================================

动态加载shiro权限,无需重新登录

技能 dewbay 6年前 (2019-04-12) 3061次浏览 已收录 0个评论 扫描二维码

原理:

清空shiro缓存的权限,shiro就会重新查询新的权限;

步骤:

1、在自定义的 Realm 增加方法:

public void clearAuthz(){
this.clearCachedAuthorizationInfo(SecurityUtils.getSubject().getPrincipals());
}

2、在自己的 service 调用这个方法:

RealmSecurityManager rsm = (RealmSecurityManager)SecurityUtils.getSecurityManager();
AuthRealm authRealm = (AuthRealm)rsm.getRealms().iterator().next();
authRealm.clearAuthz();

应用:

当登录系统后,需要重新授予角色,但不退出登录,通过调用刷新权限的方法,即可加载新的权限。

作者:yzb1075
来源:CSDN
原文:https://blog.csdn.net/yzb1075/article/details/66973310
版权声明:本文为博主原创文章,转载请附上博文链接!


露水湾 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:动态加载shiro权限,无需重新登录
喜欢 (3)
[]
分享 (0)
关于作者:
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址