0

在项目中需要获取当前登录用户的权限,并传递给前端。
如何如何从shiro中获取当前登录用户的权限信息?

2019-05-16 提问
1 个回答
0

1、在自定义的realm中,把userPermissions当做参数注册到session里面

@Override
public AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals) {
    SimpleAuthorizationInfo info = new SimpleAuthorizationInfo();
    Set<String> permissionsSet = //logic to get the permissions here

    info.addStringPermissions(permissionsSet);

    SecurityUtils.getSubject().getSession().setAttribute("permissions", permissionsSet);
    return info;
}

获取权限信息

SecurityUtils.getSubject().getSession().getAttribute("permissions");

2、直接从db里面获取不就好了。

撰写答案

推广链接