ludc
2023-03-16 e12e717a045c4b5d9893ddac9135c1721e7a0cc3
Source/BladeX/blade-auth/src/main/java/org/springblade/auth/granter/CaptchaTokenGranter.java
@@ -1,5 +1,6 @@
package org.springblade.auth.granter;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import org.springblade.auth.utils.TokenUtil;
import org.springblade.common.cache.CacheNames;
import org.springblade.core.redis.cache.BladeRedis;
@@ -44,17 +45,6 @@
   @Override
   protected OAuth2Authentication getOAuth2Authentication(ClientDetails client, TokenRequest tokenRequest) {
      HttpServletRequest request = WebUtil.getRequest();
      // 增加验证码判断
      String key = request.getHeader(TokenUtil.CAPTCHA_HEADER_KEY);
      String code = request.getHeader(TokenUtil.CAPTCHA_HEADER_CODE);
      // 获取验证码
      String redisCode = bladeRedis.get(CacheNames.CAPTCHA_KEY + key);
      // 判断验证码
      if (code == null || !StringUtil.equalsIgnoreCase(redisCode, code)) {
         throw new UserDeniedAuthorizationException(TokenUtil.CAPTCHA_NOT_CORRECT);
      }
      Map<String, String> parameters = new LinkedHashMap<String, String>(tokenRequest.getRequestParameters());
      String username = parameters.get("username");
      String password = parameters.get("password");
@@ -64,7 +54,7 @@
      Authentication userAuth = new UsernamePasswordAuthenticationToken(username, password);
      ((AbstractAuthenticationToken) userAuth).setDetails(parameters);
      try {
         userAuth = authenticationManager.authenticate(userAuth);
            userAuth = authenticationManager.authenticate(userAuth);
      }
      catch (AccountStatusException | BadCredentialsException ase) {
         //covers expired, locked, disabled cases (mentioned in section 5.2, draft 31)