무료하던 나의 일상에 흥미(?)로운 내용을 발견하게 돼 포스팅 하게 된다.
2년전쯤 개발한 사이트의 사용자 테이블 암호화 작업을 추가해야 하는데 고객의 급한(?)요구가 있어 관련된 내용이 무엇이 있을까 살펴 보았더니 딱 이거다 하는 내용이 있어 내용을 분석/파악하여 방금전 운영에 반영을 하고 왔다.
기존 Password컬럼에 비밀번호가 고스란히 표시가 되었고 이부분을 암호화하여 저장하여 향후 유지관리 될 수 있도록 학는게 목표였는데 MS-SQL에 PWDENCRYPT, PWDCOMPARE 함수를 이용하였다.
사실 좀 아쉬운 점은 암호화는 되지만 복호화 부분이 참일경우 '1', 거짓일 경우 '0' 경우라 제한적인 부분이란 것이다.
로그인이 '1' 일 때는 성공, '0' 일 때는 실패로 처리하여 별 무리 없이 진행은 되었다.(그래도 아쉬워 ㅠ)
중요한 점은 Password가 저장될 컬럼이 VARCHAR형태가 아닌 VARBINARY 형태로 저장을 하여야 이용을 할 수 있는 점이 특징이다.
개발하랴 유지보수 업무 하랴 바쁘다 바빠 하앍하앍~~
CREATE TABLE MEMBER (
USERID VARCHAR(10),
USERPASSWORD VARBINARY(100)
);
INSERT INTO MEMBER(USERID, USERPASSWORD) VALUES ('aa', PWDENCRYPT('1111'));
SELECT USERID, USERPASSWORD, PWDCOMPARE('1111', USERPASSWORD) FROM MEMBER;
=============
aa | 1111 | 1
참고 사이트 : http://ladon.tistory.com/18
'030. Database > 02. MS_SQL' 카테고리의 다른 글
[MSSQL] 날짜(From ~ To) 가져오기 (0) | 2023.08.18 |
---|---|
[MSSQL] 트리거 생성 (0) | 2014.08.20 |
[MSSQL[ 테이블 이름 변경 및 컬럼명 변경 (0) | 2014.05.28 |
[MSSQL] 관리TOOL에서 테이블 컬럼등을 수정하고자 할때 (0) | 2014.05.09 |
[MSSQL] 저장프로시저 FETCH 처리 (0) | 2014.02.07 |
WRITTEN BY
- 테네시왈츠
항상 겸손하게 항상 새롭게 항상 진실하게