오라클 사용자에게 패스워드 정책을 적용
Oracle 서버 접속 후 명령 수행
$ vi $ORACLE_HOME/rdbms/admin/utlpwdmg.sql |
$ORACLE_HOME/rdbms/admin/utlpwdmg.sql
// 아래 길이를 4에서 7로 수정 -- Check for the minimum length of the password IF length(password) < 7 THEN raise_application_error(- 20002 , 'Password length less than 7' ); END IF; // system의 기본 profile 설정은 주석처리 -- ALTER PROFILE DEFAULT LIMIT -- PASSWORD_LIFE_TIME 60 -- PASSWORD_GRACE_TIME 10 -- PASSWORD_REUSE_TIME 1800 -- PASSWORD_REUSE_MAX UNLIMITED -- FAILED_LOGIN_ATTEMPTS 3 -- PASSWORD_LOCK_TIME 1 / 1440 -- PASSWORD_VERIFY_FUNCTION verify_function; |
수정한 쿼리 수행
$ sqlplus / as sysdba SQL> @$ORACLE_HOME/rdbms/admin/utlpwdmg.sql Function created. SQL> CREATE PROFILE OracleUsers LIMIT PASSWORD_LIFE_TIME 90 PASSWORD_GRACE_TIME 2 PASSWORD_REUSE_TIME 180 PASSWORD_REUSE_MAX 4 FAILED_LOGIN_ATTEMPTS 5 PASSWORD_LOCK_TIME 30/1440 PASSWORD_VERIFY_FUNCTION verify_function; Profile created. |
옵션
- PASSWORD_LIFE_TIME: 비밀번호 사용기간 90일
- PASSWORD_GRACE_TIME: 비밀번호 만료후 유예회수, 2번 로그 출력 후 그 이후 잠김
- PASSWORD_REUSE_TIME: 한번 사용한 비밀번호는 180일 이후 사용가능
- PASSWORD_REUSE_MAX: 비밀번호를 다시 사용하기 위해 변경해야하는 횟수 (4번이상)
- FAILED_LOGIN_ATTEMPTS: 비밀번호 5회 실패시 30분 계정잠김
- PASSWORD_LOCK_TIME: 잠김이 유지되는 시간 30/1440 (30분)
- 하루를 기준으로 함
- 하루를 분단위로 표시 60분 * 24시간 = 1440
- PASSWORD_VERIFY_FUNCTION verify_function: 복잡도는 verify_function로 검증
- 7자리 이상
- 문자,숫자,특수문자 1자리 이상
- 사용자ID 사용불가
- 단순한 단어 사용불가
- 이전 비밀번호와 3자리 이상 겹치면 사용불가
새로 추가된 profile 확인
SQL> select * from dba_profiles where profile = 'ORACLEUSERS' ; |
신규 사용자 profile 적용
SQL> create user user1 identified by korea1$23AB profile OracleUsers; |
기존 사용자 profile 적용
SQL> alter user user1 profile OracleUsers; |
'Oracle > admin' 카테고리의 다른 글
11gR2 RAC 권장 파라미터 정리 (0) | 2016.06.03 |
---|---|
Redo log file의 장애 처리 유형 (0) | 2016.06.03 |
Oracle CPU Patch for Linux (0) | 2016.05.11 |
MOVE vs SHRINK Commands (0) | 2016.05.02 |
Oracle11gR2 RAC(NFS) VOTE DISK, OCR FILE Multiplexing (0) | 2016.04.28 |