|
|
|
@@ -4,7 +4,6 @@ import javax.annotation.Resource; |
|
|
|
|
|
|
|
import com.iformall.common.ErrorCode; |
|
|
|
import com.iformall.enums.EnumMallUserStatus; |
|
|
|
import com.iformall.exception.MallinkException; |
|
|
|
import com.iformall.service.MallUserInfoService; |
|
|
|
import org.apache.shiro.SecurityUtils; |
|
|
|
import org.apache.shiro.authc.*; |
|
|
|
@@ -16,7 +15,8 @@ import org.apache.shiro.subject.PrincipalCollection; |
|
|
|
import org.apache.shiro.util.ByteSource; |
|
|
|
|
|
|
|
import com.iformall.domain.po.MallUserInfo; |
|
|
|
import com.iformall.service.MallPermissionService; |
|
|
|
|
|
|
|
import java.util.Set; |
|
|
|
|
|
|
|
/** |
|
|
|
* Created by yangqj on 2017/4/21. |
|
|
|
@@ -26,21 +26,13 @@ public class MyShiroRealm extends AuthorizingRealm { |
|
|
|
@Resource |
|
|
|
private MallUserInfoService userService; |
|
|
|
|
|
|
|
@Resource |
|
|
|
private MallPermissionService resourcesService; |
|
|
|
|
|
|
|
//授权 |
|
|
|
@Override |
|
|
|
protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principalCollection) { |
|
|
|
MallUserInfo user= (MallUserInfo) SecurityUtils.getSubject().getPrincipal();//User{id=1, username='admin', password='3ef7164d1f6167cb9f2658c07d3c2f0a', enable=1} |
|
|
|
// Map<String,Object> map = new HashMap<String,Object>(); |
|
|
|
// map.put("userid",user.getId()); |
|
|
|
// List<SysPermission> resourcesList = resourcesService.list(map); |
|
|
|
// 权限信息对象info,用来存放查出的用户的所有的角色(role)及权限(permission) |
|
|
|
MallUserInfo user= (MallUserInfo) SecurityUtils.getSubject().getPrincipal(); |
|
|
|
Set<String> permissionSet = userService.getUserPermissions(user); |
|
|
|
SimpleAuthorizationInfo info = new SimpleAuthorizationInfo(); |
|
|
|
// for(SysPermission resources: resourcesList){ |
|
|
|
// info.addStringPermission(resources.getUrl()); |
|
|
|
// } |
|
|
|
info.setStringPermissions(permissionSet); |
|
|
|
return info; |
|
|
|
} |
|
|
|
|
|
|
|
|