Ver Fonte

!1383 密码错误次数优化
Merge pull request !1383 from 程序O/next

zuohuaijun há 1 ano atrás
pai
commit
ffc34de63f
1 ficheiros alterados com 7 adições e 2 exclusões
  1. 7 2
      Admin.NET/Admin.NET.Core/Service/Auth/SysAuthService.cs

+ 7 - 2
Admin.NET/Admin.NET.Core/Service/Auth/SysAuthService.cs

@@ -65,8 +65,13 @@ public class SysAuthService : IDynamicApiController, ITransient
         // 判断密码错误次数(缓存30分钟)
         var keyPasswordErrorTimes = $"{CacheConst.KeyPasswordErrorTimes}{input.Account}";
         var passwordErrorTimes = _sysCacheService.Get<int>(keyPasswordErrorTimes);
-        var passwordMaxErrorTimes = await _sysConfigService.GetConfigValue<int>(ConfigConst.SysPasswordMaxErrorTimes);
-        if (passwordErrorTimes >= passwordMaxErrorTimes)
+        var passwordMaxErrorTimes = await _sysConfigService.GetConfigValue<int>(ConfigConst.SysPasswordMaxErrorTimes);
+		//如果未配置,或误配置为0、负数, 正确密码第一次也无法登录,账号全部锁定。
+		if (passwordMaxErrorTimes < 1)
+		{
+			passwordMaxErrorTimes = 1;
+		}
+		if (passwordErrorTimes >= passwordMaxErrorTimes)
             throw Oops.Oh(ErrorCodeEnum.D1027);
 
         // 是否开启验证码