패스워드를 재사용이 불가능 하게 하기 위해서는
프로파일 리소스 중 PASSWORD_REUSE_TIME , PASSWORD_REUSE_MAX 를 함께 설정을 해야 합니다.
- PASSWORD_REUSE_TIME은 암호를 재사용할 수 없는 일 수를 지정합니다.
- PASSWORD_REUSE_MAX는 현재 암호를 재사용하기 전에 필요한 암호 변경 횟수를 지정합니다.
- PASSWORD_REUSE_TIME을 30으로 지정하고 PASSWORD_REUSE_MAX를 10으로 지정하면
사용자는 암호가 이미 10번 변경된 경우 30일 후에 암호를 재사용할 수 있습니다.
- 이 매개변수 중 하나에 정수를 지정하고 다른 매개변수에 UNLIMITED를 지정하면 사용자는 암호를 재사용할 수 없습니다.
ALTER PROFILE PW_PROFILE LIMIT
PASSWORD_REUSE_TIME UNLIMITED
PASSWORD_REUSE_MAX 1 ;
PASSWORD_REUSE_TIME UNLIMITED
PASSWORD_REUSE_MAX 1 ;
- 해당 패스워드의 히스토리 정보는 SYS 테이블에 저장이 됩니다.
- 만약 히스토리를 초기화 시키고 싶으면 아래와 같이 하면 됩니다.
1.confirm the user id
SELECT username, user_id
FROM dba_users
WHERE username='<USERNAME>';
2.delete the associated rows from Password History
SQL> DELETE FROM sys.user_history$ WHERE user#=<user_id from Step 1>;
SQL> commit;
SQL> select * from sys.user_history$ WHERE user#=<user_id from Step 1>;
SELECT username, user_id
FROM dba_users
WHERE username='<USERNAME>';
2.delete the associated rows from Password History
SQL> DELETE FROM sys.user_history$ WHERE user#=<user_id from Step 1>;
SQL> commit;
SQL> select * from sys.user_history$ WHERE user#=<user_id from Step 1>;
참조 : Database SQL Reference , How to reset the Password History? (Doc ID 2318226.1)
좋은 내용 감사합니다.