From 625609d08095d2a323a088ef7222f4e1f1d72cc5 Mon Sep 17 00:00:00 2001 From: shuzheng <469741414@qq.com> Date: Fri, 24 Feb 2017 13:11:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=88=E6=9D=83=E7=94=A8=E6=88=B7=E8=A7=92?= =?UTF-8?q?=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zheng/upms/server/shiro/realm/UpmsRealm.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/zheng-upms/zheng-upms-server/src/main/java/com/zheng/upms/server/shiro/realm/UpmsRealm.java b/zheng-upms/zheng-upms-server/src/main/java/com/zheng/upms/server/shiro/realm/UpmsRealm.java index 0746d071..b0b12081 100644 --- a/zheng-upms/zheng-upms-server/src/main/java/com/zheng/upms/server/shiro/realm/UpmsRealm.java +++ b/zheng-upms/zheng-upms-server/src/main/java/com/zheng/upms/server/shiro/realm/UpmsRealm.java @@ -2,6 +2,7 @@ package com.zheng.upms.server.shiro.realm; import com.zheng.common.util.MD5Util; import com.zheng.upms.dao.model.UpmsPermission; +import com.zheng.upms.dao.model.UpmsRole; import com.zheng.upms.dao.model.UpmsUser; import com.zheng.upms.dao.model.UpmsUserExample; import com.zheng.upms.rpc.api.UpmsApiService; @@ -42,17 +43,27 @@ public class UpmsRealm extends AuthorizingRealm { protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principalCollection) { UpmsUser upmsUser = (UpmsUser) principalCollection.getPrimaryPrincipal(); + // 当前用户所有角色 + List upmsRoles = upmsApiService.selectUpmsRoleByUpmsUserId(upmsUser.getUserId()); + Set roles = new HashSet<>(); + for (UpmsRole upmsRole : upmsRoles) { + if (StringUtils.isNotBlank(upmsRole.getName())) { + roles.add(upmsRole.getName()); + } + } + // 当前用户所有权限 List upmsPermissions = upmsApiService.selectUpmsPermissionByUpmsUserId(upmsUser.getUserId()); Set permissions = new HashSet<>(); for (UpmsPermission upmsPermission : upmsPermissions) { - if (StringUtils.isNotEmpty(upmsPermission.getPermissionValue())) { + if (StringUtils.isNotBlank(upmsPermission.getPermissionValue())) { permissions.add(upmsPermission.getPermissionValue()); } } SimpleAuthorizationInfo simpleAuthorizationInfo = new SimpleAuthorizationInfo(); simpleAuthorizationInfo.setStringPermissions(permissions); + simpleAuthorizationInfo.setRoles(roles); return simpleAuthorizationInfo; } -- GitLab