Index: ssts-web/src/main/webapp/disinfectsystem/config/zsyy/config.js =================================================================== diff -u -r40926 -r41177 --- ssts-web/src/main/webapp/disinfectsystem/config/zsyy/config.js (.../config.js) (revision 40926) +++ ssts-web/src/main/webapp/disinfectsystem/config/zsyy/config.js (.../config.js) (revision 41177) @@ -396,7 +396,10 @@ "containNumber":false, "passwordNotContainLoginName":true, "passwordComplexityReq1":false, -"windowsPasswordComplexityReq":true}, +"windowsPasswordComplexityReq":true, +"blacklistPatterns": ["123456", "admin", "test", "qweasd", "qwezxc","147258", "13579", "zsyy", "Zsyy","ZSYY","abc","123", "qwe"], +'customRegex':"^((?!.*(?:123|admin|test|qwe|asd|zxc|abc|147|258|13579|zsyy|Zsyy|ZSYY)).)*$" +}, //功能模块默认查询时间 defaultQueryTimeOfTheFunctionModule:[{"functionalModule": "invoicePlan","queryPeriod": "0"},{"functionalModule": "invoicePlan_inventoryInquiry","queryPeriod": "180"},{"functionalModule": "tousseManager","queryPeriod": "180"},{"functionalModule": "reviewView","queryPeriod": "180"},{"functionalModule": "useRecord","queryPeriod": "180"},{"functionalModule": "recyclingApplication","queryPeriod": "0"},{"functionalModule": "sterilizationLoading_fixedBarcode","queryPeriod": "600"} ,{"functionalModule": "foreignTousseApplication","queryPeriod": "1"} Index: ssts-web/src/main/webapp/js/common.js =================================================================== diff -u -r40916 -r41177 --- ssts-web/src/main/webapp/js/common.js (.../common.js) (revision 40916) +++ ssts-web/src/main/webapp/js/common.js (.../common.js) (revision 41177) @@ -2289,6 +2289,10 @@ var passwordComplexityReq1 = pwdConfig.passwordComplexityReq1; //密码复杂度要求2,该要求包含以下四类字符中的三类字符:(QYSRMYY-27) var windowsPasswordComplexityReq = pwdConfig.windowsPasswordComplexityReq; + //ZSYY-441:数组元素,可以定义弱密码黑名单及禁用的连续字 + var blacklistPatterns = pwdConfig.blacklistPatterns || []; + //ZSYY-441:可以设置自定义的正则校验表达式 + var customRegex = pwdConfig.customRegex || ''; minPwdLength = isUndefinedOrNullOrEmpty(minPwdLength) ? 6 : minPwdLength; @@ -2306,6 +2310,11 @@ var regExp6 = new RegExp('(?=.*[0-9])(?=.*[^a-zA-Z0-9])'); //包含特殊符号,英文字母 var regExp7 = new RegExp('(?=.*[^a-zA-Z0-9])(?=.*[a-zA-Z])'); + //自定义表达式 + var regExp8 = ''; + if (customRegex !== '') { + regExp8 = new RegExp(customRegex); + } var tempPwd = pwd.toLowerCase(); var tempLoginUser = loginUser.toLowerCase(); @@ -2328,6 +2337,19 @@ obj.msg = "密码强度不够,至少包含大写字母,小写字母、数字、特殊字符的其中三种"; } else if (passwordComplexityReq1 && !regExp5.test(pwd) && !regExp6.test(pwd) && !regExp7.test(pwd)) { obj.msg = "密码强度不够,至少包含英文字母、数字、特殊字符的其中两种!"; + } else if (blacklistPatterns.length > 0) { + var word = ''; + for (var k = 0; k < blacklistPatterns.length; k++) { + if (pwd.indexOf(blacklistPatterns[k]) >= 0) { + word = blacklistPatterns[k]; + break; + } + } + if (word !== '') { + obj.msg = "密码不可以包含【" + word + "】!"; + } + } else if (regExp8 !== '' && !regExp8.test(pwd)) { + obj.msg = "密码不符合要求!"; } else { obj.success = true; }