Parcourir la source

设置密码为强密码

18339543638 il y a 1 an
Parent
commit
a3f1284063

+ 5 - 0
nb-service/web-service/src/main/java/com/nb/web/service/system/auth/DefaultAccountOperator.java

@@ -20,6 +20,7 @@ import com.nb.web.service.system.entity.SysUser;
 import com.nb.web.service.system.service.ISysMenuService;
 import com.nb.web.service.system.service.ISysRoleService;
 import com.nb.web.service.system.service.ISysUserService;
+import com.nb.web.service.system.utils.PswUtils;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Component;
 import java.util.*;
@@ -72,6 +73,7 @@ public class DefaultAccountOperator implements IAccountOperator {
             userInfoVO.setRoles(roleInfoVOList);
             userInfoVO.setIsSys(sysUser.getIsSys());
             userInfoVO.setTenantName(sysUser.getTenantName());
+            userInfoVO.setPswNeedReset(sysUser.getPswNeedReset());
         }
         userInfoVO.setTenantId(String.valueOf(loginUser.getTenantId()));
         return userInfoVO;
@@ -133,6 +135,9 @@ public class DefaultAccountOperator implements IAccountOperator {
         if (!SecurityUtil.matchesPassword(oldPass, sysUser.getPassword())) {
             throw new CustomException("旧密码不正确");
         }
+        if (PswUtils.validatePsw(newPass)) {
+            throw new CustomException("密码由8~16位大小写字母、数字及特殊字符等混合、随机组成(至少包括数字、小写字母、大写字母和特殊符号中的三种)");
+        }
         String encryptPassword = SecurityUtil.encryptPassword(newPass);
         return sysUserService
                 .update(new UpdateWrapper<SysUser>()