用户管理、角色管理BUG修复
This commit is contained in:
parent
c0efc5c91a
commit
13e48ebc09
|
|
@ -76,7 +76,10 @@ public class PasswordValidatorServiceImpl implements PasswordValidatorService {
|
|||
|
||||
private boolean isPasswordCharacterValid(String password) {
|
||||
boolean hasUpperCase = false, hasLowerCase = false, hasDigit = false, hasSpecialChar = false;
|
||||
|
||||
systemConfig.getPasswordConfig().setRequireUpperCase(true);
|
||||
systemConfig.getPasswordConfig().setRequireLowerCase(true);
|
||||
systemConfig.getPasswordConfig().setRequireDigit(true);
|
||||
systemConfig.getPasswordConfig().setRequireSpecialChar(true);
|
||||
for (char c : password.toCharArray()) {
|
||||
if (Character.isUpperCase(c)) hasUpperCase = true;
|
||||
if (Character.isLowerCase(c)) hasLowerCase = true;
|
||||
|
|
@ -84,10 +87,24 @@ public class PasswordValidatorServiceImpl implements PasswordValidatorService {
|
|||
if ("!@#$%^&*()-_=+[{]};:'\",<.>/?".indexOf(c) >= 0) hasSpecialChar = true;
|
||||
}
|
||||
|
||||
if (systemConfig.getPasswordConfig().isRequireUpperCase() && !hasUpperCase) return false;
|
||||
if (systemConfig.getPasswordConfig().isRequireLowerCase() && !hasLowerCase) return false;
|
||||
if (systemConfig.getPasswordConfig().isRequireDigit() && !hasDigit) return false;
|
||||
return !(systemConfig.getPasswordConfig().isRequireSpecialChar() && !hasSpecialChar);
|
||||
if (systemConfig.getPasswordConfig().isRequireUpperCase() && !hasUpperCase) {
|
||||
systemConfig.getPasswordConfig().setRequireUpperCase(false);
|
||||
return false;
|
||||
};
|
||||
if (systemConfig.getPasswordConfig().isRequireLowerCase() && !hasLowerCase) {
|
||||
systemConfig.getPasswordConfig().setRequireLowerCase(false);
|
||||
return false;
|
||||
};
|
||||
if (systemConfig.getPasswordConfig().isRequireDigit() && !hasDigit) {
|
||||
systemConfig.getPasswordConfig().setRequireDigit(false);
|
||||
return false;
|
||||
};
|
||||
if (systemConfig.getPasswordConfig().isRequireSpecialChar() && !hasSpecialChar) {
|
||||
systemConfig.getPasswordConfig().setRequireSpecialChar(false);
|
||||
return false;
|
||||
};
|
||||
return true;
|
||||
// return !(systemConfig.getPasswordConfig().isRequireSpecialChar() && !hasSpecialChar);
|
||||
}
|
||||
|
||||
private boolean containsWeakPassword(String password) {
|
||||
|
|
@ -104,16 +121,20 @@ public class PasswordValidatorServiceImpl implements PasswordValidatorService {
|
|||
* 根据配置返回密码不符合要求时的错误提示信息
|
||||
*/
|
||||
private String getCharacterRequirementErrorMessage() {
|
||||
if (systemConfig.getPasswordConfig().isRequireUpperCase()) {
|
||||
System.err.println(systemConfig.getPasswordConfig().isRequireUpperCase());
|
||||
System.err.println(systemConfig.getPasswordConfig().isRequireLowerCase());
|
||||
System.err.println(systemConfig.getPasswordConfig().isRequireDigit());
|
||||
System.err.println(systemConfig.getPasswordConfig().isRequireSpecialChar());
|
||||
if (!systemConfig.getPasswordConfig().isRequireUpperCase()) {
|
||||
return "密码必须包含大写字母!";
|
||||
}
|
||||
if (systemConfig.getPasswordConfig().isRequireLowerCase()) {
|
||||
if (!systemConfig.getPasswordConfig().isRequireLowerCase()) {
|
||||
return "密码必须包含小写字母!";
|
||||
}
|
||||
if (systemConfig.getPasswordConfig().isRequireDigit()) {
|
||||
if (!systemConfig.getPasswordConfig().isRequireDigit()) {
|
||||
return "密码必须包含数字!";
|
||||
}
|
||||
if (systemConfig.getPasswordConfig().isRequireSpecialChar()) {
|
||||
if (!systemConfig.getPasswordConfig().isRequireSpecialChar()) {
|
||||
return "密码必须包含特殊字符!";
|
||||
}
|
||||
return "密码不符合字符要求!";
|
||||
|
|
|
|||
Loading…
Reference in New Issue