Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- NPM
- JavaScript
- IntelliJ
- tomcat
- SPC
- vaadin
- SQL
- window
- mybatis
- es6
- Android
- GIT
- Java
- 보조정렬
- Express
- mapreduce
- xPlatform
- Kotlin
- react
- table
- 공정능력
- Python
- Eclipse
- R
- SSL
- hadoop
- Spring
- plugin
- Sqoop
- MSSQL
Archives
- Today
- Total
DBILITY
xplatform 비밀번호 유효성 체크 본문
반응형
xplatform 9.2에서 작성되었습니다.
비밀번호 자리수, 문자,숫자,특수문자 혼합, 아이디 포함유무, 동일문자사용(3회), 연속된 문자열(3회) 체크
어차피 자바스크립트랑 비슷하고, 테스트는 제대로 못함.
function validPassword(userId:String,password:String, passwordRe:String) {
if(password != passwordRe){
alert("입력하신 비밀번호와 비밀번호 확인이 일치하지 않습니다.");
return false;
}
if(password.length < 8 || password.length > 12) {
alert("비밀번호는 영문자,숫자,특수문자의 조합으로 8자 이상 12자 이하여야 합니다.");
return false;
}
if(!password.match(/([a-zA-Z0-9].*[!,@,#,$,%,^,&,*,?,_,~])|([!,@,#,$,%,^,&,*,?,_,~].*[a-zA-Z0-9])/)) {
alert("비밀번호는 영문자,숫자,특수문자의 조합이어야 합니다.");
return false;
}
/*
if(!password.match(/([a-zA-Z].*[0-9])|([0-9].*[a-zA-Z])/)) {
alert("비밀번호는 영문자,숫자의 조합이어야 합니다.");
return false;
}
*/
/*
if(!password.match(/[a-zA-Z].*[0-9]/)) {
alert("비밀번호는 영문자+숫자의 조합이어야 합니다.");
return false;
}
*/
if(password.indexOf(userId)>-1) {
alert("비밀번호에 아이디를 포함할 수 없습니다.");
return false;
}
var sameChar = 0;
var continuePass01 = 0;
var continuePass02 = 0;
var passChar0;
var passChar1;
var passChar2;
for(var i=0;i <password.length;i++){
passChar0 = password.charAt(i);
passChar1 = password.charAt(i+1);
passChar2 = password.charAt(i+2);
if(passChar0 == passChar1){
sameChar=sameChar+1;
}
if(sameChar > 2){
alert("동일문자를 3번이상 사용할 수 없습니다.");
return false;
}
if(passChar0.charCodeAt(0)-passChar1.charCodeAt(0)==1 && passChar1.charCodeAt(0)-passChar2.charCodeAt(0)==1) {
continuePass01=continuePass01+1;
}
if(passChar0.charCodeAt(0)-passChar1.charCodeAt(0)==-1 && passChar1.charCodeAt(0)-passChar2.charCodeAt(0)==-1) {
continuePass02=continuePass02+1;
}
if(continuePass01>1||continuePass02>1){
alert("연속된 문자를 3자 이상 사용할 수 없습니다.");
return false;
}
}
return true;
}
반응형
'front-end & ui > xplatform' 카테고리의 다른 글
xplatform grid 한글,영문대문자,하이픈(-) 외 입력제한 (0) | 2022.02.08 |
---|---|
xplatform dataset filter like (0) | 2021.11.23 |
explorer 11이하와 기타 browser 식별시 테스트용 (0) | 2017.09.04 |
xplatform 코딩으로 setWaitCursor처리 시 참고 (0) | 2017.02.17 |
xplatform 사용자 정의 콤포넌트에서 콤포넌트가 배치된 부모폼의 함수를 찾아 실행하는 예제 일부 (0) | 2017.01.19 |
Comments