From 59ae9759fd50568059fa44f43832f5a414edb3e9 Mon Sep 17 00:00:00 2001 From: kongzy <kongzy> Date: 星期一, 27 十一月 2023 15:08:23 +0800 Subject: [PATCH] 增加权限控制 --- assess-framework/src/main/java/com/gkhy/assess/framework/shiro/realm/UserRealm.java | 17 ++++++++++++++--- 1 files changed, 14 insertions(+), 3 deletions(-) diff --git a/assess-framework/src/main/java/com/gkhy/assess/framework/shiro/realm/UserRealm.java b/assess-framework/src/main/java/com/gkhy/assess/framework/shiro/realm/UserRealm.java index 18ba914..84bdc4d 100644 --- a/assess-framework/src/main/java/com/gkhy/assess/framework/shiro/realm/UserRealm.java +++ b/assess-framework/src/main/java/com/gkhy/assess/framework/shiro/realm/UserRealm.java @@ -1,5 +1,6 @@ package com.gkhy.assess.framework.shiro.realm; +import com.gkhy.assess.common.enums.UserIdentityEnum; import com.gkhy.assess.common.utils.RequestUtil; import com.gkhy.assess.common.utils.SpringContextUtils; import com.gkhy.assess.framework.shiro.JwtToken; @@ -37,8 +38,17 @@ Set<String> roles=new HashSet<>(); Set<String> menus=new HashSet<>(); SimpleAuthorizationInfo info=new SimpleAuthorizationInfo(); - info.addRole("admin"); - info.addStringPermission("*:*:*"); + if(sysUser.getIdentity().equals(UserIdentityEnum.MONITOR.getCode())){ + info.addRole("monitor"); + info.addStringPermission("system:assess:monitor"); + }else if(sysUser.getIdentity().equals(UserIdentityEnum.AGENCY.getCode())){ + info.addRole("agency"); + info.addStringPermission("system:assess:agency"); + }else{ + info.addRole("expert"); + info.addStringPermission("system:assess:expert"); + } + return info; } @@ -50,11 +60,12 @@ */ @Override protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken) throws AuthenticationException { + HttpServletRequest req = SpringContextUtils.getHttpServletRequest(); SysUser sysUser=null; if(authenticationToken instanceof JwtToken){ String token= (String) authenticationToken.getCredentials(); if(token==null){ - HttpServletRequest req = SpringContextUtils.getHttpServletRequest(); + log.info("————————身份认证失败——————————IP地址: "+ RequestUtil.getRequestIp(req) +",URL:"+req.getRequestURI()); throw new AuthenticationException("token为空!"); } -- Gitblit v1.9.2