diff --git a/pqs-auth/src/main/java/com/njcn/auth/security/extension/captcha/CaptchaTokenGranter.java b/pqs-auth/src/main/java/com/njcn/auth/security/extension/captcha/CaptchaTokenGranter.java index 023b3bc1c..5abe29f8a 100644 --- a/pqs-auth/src/main/java/com/njcn/auth/security/extension/captcha/CaptchaTokenGranter.java +++ b/pqs-auth/src/main/java/com/njcn/auth/security/extension/captcha/CaptchaTokenGranter.java @@ -48,8 +48,11 @@ public class CaptchaTokenGranter extends AbstractTokenGranter { Map parameters = new LinkedHashMap<>(tokenRequest.getRequestParameters()); String username = parameters.get(SecurityConstants.USERNAME); username = DesUtils.aesDecrypt(username); - if (!judgeImageCode(parameters.get(SecurityConstants.IMAGE_CODE), RequestUtil.getRequest())) { - throw new BusinessException(UserResponseEnum.LOGIN_WRONG_CODE); + String verifyCode = parameters.get(SecurityConstants.VERIFY_CODE); + if(StrUtil.isEmpty(verifyCode)||verifyCode.equals("1")){ + if (!judgeImageCode(parameters.get(SecurityConstants.IMAGE_CODE), RequestUtil.getRequest())) { + throw new BusinessException(UserResponseEnum.LOGIN_WRONG_CODE); + } } String password = parameters.get(SecurityConstants.PASSWORD); String ip = RequestUtil.getRequest().getHeader(SecurityConstants.REQUEST_HEADER_KEY_CLIENT_REAL_IP); diff --git a/pqs-common/common-core/src/main/java/com/njcn/common/pojo/constant/SecurityConstants.java b/pqs-common/common-core/src/main/java/com/njcn/common/pojo/constant/SecurityConstants.java index 5ab308c66..cee58637b 100644 --- a/pqs-common/common-core/src/main/java/com/njcn/common/pojo/constant/SecurityConstants.java +++ b/pqs-common/common-core/src/main/java/com/njcn/common/pojo/constant/SecurityConstants.java @@ -95,6 +95,7 @@ public interface SecurityConstants { String USERNAME = "username"; String PASSWORD = "password"; String IMAGE_CODE = "imageCode"; + String VERIFY_CODE = "verifyCode"; /**