安全可靠应用等级测评要求密码必须是强密码,强密码即是密码要包含包含数字、字母和特殊字符,长度要求8以上。
前端密码验证:
//符合强密码规则返回true,否则返回false
function checkPasswordComplexity(password) {
var reg = /^(?![0-9]+$)(?![^0-9]+$)(?![a-zA-Z]+$)(?![^a-zA-Z]+$)(?![a-zA-Z0-9]+$)[a-zA-Z0-9\S]{8,30}$/;
if(password.match(reg)) {
return true;
}
return false;
}
后端密码验证:
package security;
/**
* 密码校验:包含数字、字母和特殊字符,长度要求8到30位。
* @author lxzqz
*
*/
public class CheckPassword {
public static final String REGEX_PASSWORD_STRONG = "^(?![0-9]+$)(?![^0-9]+$)(?![a-zA-Z]+$)(?![^a-zA-Z]+$)(?![a-zA-Z0-9]+$)[a-zA-Z0-9\\S]{8,30}$";
/**
* 密码校验,符合强密码规则返回true,否则返回false
* @param password
* @return
*/
public static boolean check(String password) {
boolean flag = password.matches(REGEX_PASSWORD_STRONG);
return flag;
}
}