ludc
2023-11-29 52f15705d063ec64a6f5bffcf50d056997c23f91
Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/service/BladeUserDetailsServiceImpl.java
@@ -31,6 +31,7 @@
import com.vci.ubcs.common.cache.CacheNames;
import org.springblade.core.jwt.JwtUtil;
import org.springblade.core.jwt.props.JwtProperties;
import org.springblade.core.launch.constant.TokenConstant;
import org.springblade.core.log.annotation.LoginOrLogoutLog;
import org.springblade.core.redis.cache.BladeRedis;
import org.springblade.core.secure.utils.AuthUtil;
@@ -110,6 +111,7 @@
      // 获取租户ID
      String headerTenant = request.getHeader(TokenUtil.TENANT_HEADER_KEY);
      String paramTenant = request.getParameter(TokenUtil.TENANT_PARAM_KEY);
      String refreshToken = request.getParameter(TokenConstant.REFRESH_TOKEN);
      String password = request.getParameter(TokenUtil.PASSWORD_KEY);
      String grantType = request.getParameter(TokenUtil.GRANT_TYPE_KEY);
      // 判断租户请求头
@@ -139,7 +141,9 @@
      //超级管理员配置文件配置账号密码,实现登录, 默认租户id和超管为配置出来的
      if(tenantId.equals(this.tenantId) && userName.equals(username)){
         if (!this.userName.equals(username) || !BladePasswordEncoderFactories.createDelegatingPasswordEncoder().encode(password).equalsIgnoreCase(AuthConstant.ENCRYPT+this.password)) {
         if (Func.isBlank(refreshToken)/*刷新token不用校验密码*/
            && (!this.userName.equals(username) || !BladePasswordEncoderFactories.createDelegatingPasswordEncoder().encode(password).equalsIgnoreCase(AuthConstant.ENCRYPT+this.password))
         ) {
            setFailCount(tenantId, username, count,strategy.getLockingTime());
            throw new UsernameNotFoundException(TokenUtil.USER_NOT_FOUND+"还有【"+(failCount-count)+"】次尝试机会!");
         }