Jelajahi Sumber

(注释状态)未MD5加密密码修改中密码复杂度判断,登录对于未达相应复杂度的密码返回提示信息。

zhanghang 4 tahun lalu
induk
melakukan
853e73400a

+ 2 - 0
src/main/java/com/diagbot/dto/JwtDTO.java

@@ -19,4 +19,6 @@ public class JwtDTO {
     private String typeCn; //用户类型中文
     //用户权限列表
     private List<SysRoleDTO> selRoles;
+    //用户密码复杂度是否符合
+//    private String passwordComplexity;
 }

+ 21 - 1
src/main/java/com/diagbot/facade/SysUserFacade.java

@@ -149,6 +149,13 @@ public class SysUserFacade extends SysUserServiceImpl {
         jwtStore.setAccessToken(jwt.getAccess_token());
         jwtStore.setRefreshToken(jwt.getRefresh_token());
         tokenFacade.createToken(jwtStore);
+        /***
+         * 未加密密码复杂度判断
+         */
+/*        Boolean passwordRegular = passwordRegular(password);
+        if(!passwordRegular){
+            data.setPasswordComplexity("密码复杂度过低,请及时修改密码");
+        }*/
         return data;
     }
 
@@ -257,7 +264,10 @@ public class SysUserFacade extends SysUserServiceImpl {
             throw new CommonException(CommonErrorCode.PARAM_IS_NULL,
                     "原密码和新密码不能相同");
         }
-
+/*        Boolean regularBoolean = passwordRegular(modifyPassword);
+        if(!regularBoolean){
+            throw new CommonException(CommonErrorCode.PARAM_IS_ERROR, "请输入正确格式的新密码");
+        }*/
         String userId = SysUserUtils.getCurrentPrincipleID();
         SysUser user = this.getOne(new QueryWrapper<SysUser>()
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
@@ -281,6 +291,16 @@ public class SysUserFacade extends SysUserServiceImpl {
         return true;
     }
 
+    /**
+     * 未加密密文正则表达式  至少8个字符,至少1个大写字母,1个小写字母,1个数字和1个特殊字符:
+     * @param password
+     * @return
+     */
+    public Boolean passwordRegular(String password){
+        String regex="^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[$@$!%*?&])[A-Za-z\\d$@$!%*?&]{8,}";
+        boolean check=password.matches(regex);
+        return check;
+    }
     /**
      * 登录
      *