优化登录失败返回状态

v1.4.1
Parker 5 years ago
parent 3fe62019c9
commit f493308d6d

@ -244,7 +244,7 @@ public class UserTokenUtil {
/** /**
* *
* @param username * @param username
*/ */
public static void verifyLockAccount(String username){ public static void verifyLockAccount(String username){
// 判断账号是否临时锁定 // 判断账号是否临时锁定
@ -273,9 +273,9 @@ public class UserTokenUtil {
/** /**
* *
* @param username * @param username
*/ */
public static ResultVo<?> lockAccount(String username){ public static TokenMsg lockAccount(String username){
// 如果失败次数 超过阈值 则锁定账号 // 如果失败次数 超过阈值 则锁定账号
Long slipNum = redisPlugin.increment(ACCOUNT_SLIP_COUNT_PREFIX + username); Long slipNum = redisPlugin.increment(ACCOUNT_SLIP_COUNT_PREFIX + username);
if (slipNum != null){ if (slipNum != null){
@ -291,20 +291,12 @@ public class UserTokenUtil {
} }
} }
Map<String,Boolean> flagMap = Maps.newHashMap(); return TokenMsg.EXCEPTION_LOGIN_ACCOUNT_NO;
flagMap.put("izVerify", false);
if(slipNum != null && slipNum >= ACCOUNT_SLIP_VERIFY_COUNT){
flagMap.put("izVerify", true);
}
return ResultVo.error(TokenMsg.EXCEPTION_LOGIN_ACCOUNT_NO.getCode(),
TokenMsg.EXCEPTION_LOGIN_ACCOUNT_NO.getMessage(),
flagMap
);
} }
/** /**
* *
* @param username * @param username
*/ */
public static long getSlipCount(String username){ public static long getSlipCount(String username){
long count = 0L; long count = 0L;
@ -320,7 +312,7 @@ public class UserTokenUtil {
/** /**
* *
* @param username * @param username
*/ */
public static void clearLockAccount(String username){ public static void clearLockAccount(String username){
// 删除失败次数记录 // 删除失败次数记录

@ -103,7 +103,8 @@ public class LoginRestController {
if(user == null || if(user == null ||
!user.getPassword().equals(UserUtil.handlePassword(form.getPassword(), user.getSecretkey()))) { !user.getPassword().equals(UserUtil.handlePassword(form.getPassword(), user.getSecretkey()))) {
// 判断是否需要锁定账号 这里没有直接抛异常 而是返回错误信息, 其中包含 是否开启验证码状态 // 判断是否需要锁定账号 这里没有直接抛异常 而是返回错误信息, 其中包含 是否开启验证码状态
return UserTokenUtil.lockAccount(form.getUsername()); TokenMsg lockAccountMsg = UserTokenUtil.lockAccount(form.getUsername());
throw new TokenException(lockAccountMsg);
} }
// 如果验证成功, 则清除锁定信息 // 如果验证成功, 则清除锁定信息

Loading…
Cancel
Save