码迷,mamicode.com
首页 > 其他好文 > 详细

shiro重新赋值权限

时间:2016-09-18 13:28:25      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:

/**
     * 重新赋值权限(在比如:给一个角色临时添加一个权限,需要调用此方法刷新权限,否则还是没有刚赋值的权限)
     * @param myRealm 自定义的realm
     * @param username 用户名
     */
    public static void reloadAuthorizing(MyRealm myRealm,String username){
        Subject subject = SecurityUtils.getSubject(); 
        String realmName = subject.getPrincipals().getRealmNames().iterator().next(); 
        //第一个参数为用户名,第二个参数为realmName,test想要操作权限的用户 
        SimplePrincipalCollection principals = new SimplePrincipalCollection(username,realmName); 
        subject.runAs(principals); 
        myRealm.getAuthorizationCache().remove(subject.getPrincipals()); 
        subject.releaseRunAs();
    }

 可封装成一个工具类的方法,直接调用即可

shiro重新赋值权限

标签:

原文地址:http://www.cnblogs.com/jianguang/p/5881095.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!