ALTER USER
ALTER USER#
구문#
alter_user ::=#
전제 조건#
SYS 사용자 또는 ALTER USER 시스템 권한을 가진 사용자만이 이 구문을 이용해서 사용자 정의를 변경할 수 있다. 그러나 현재 접속한 사용자가 자신의 암호를 변경할 때에는 권한이 필요없다.
설명#
사용자의 암호를 변경하는 구문이다.
IDENTIFIED 절#
사용자의 새로운 암호를 명시한다. 새로운 암호는 BY 뒤에 지정한다.
이외 다른 절의 기능들은 CREATE USER 문의 해당하는 절과 동일하므로 CREATE USER 문을 참고한다.
LIMIT 절#
이 절을 사용해서 어떤 계정에 대한 패스워드 관리 정책을 변경한다. 이 절은 SYS 사용자만 수행할 수 있다. 패스워드 관리 정책 변경시 명시하지 않은 기존의 정책은 초기화된다.
ACCOUNT LOCK/UNLOCK#
이 절을 사용해서 명시적으로 어떤 계정을 잠그거나 잠금을 해제할 수 있다.
ENABLE/ DISABLE#
사용자가 사용중인 TCP 접속을 제한할 수 있다. 이 절은 SYS 사용자만 수행할 수 있다.
주의 사항#
- SYSDBA 모드로 접속가능한 SYS 사용자의 암호를 변경하고자 할 경우, 먼저 ALTER USER 문으로 암호를 변경한 후 운영체제의 콘솔 (유닉스 쉘 혹은 DOS 창)에서 altipasswd를 실행하여 암호를 한번 더 변경해야 한다. altipasswd에 대한 자세한 내용은 Utilities Manual을 참고한다.
- ALTER USER 문으로 암호를 변경한 후 server, is, 및 il 같이 암호가 고정 삽입되어 있는 쉘 스크립트 파일 내에서도 계정의 암호를 변경해야, 오류 없이 스크립트 파일을 실행할 수 있다.
예제#
<질의> 사용자 tom의 암호를 ab1rose로 변경하라.
iSQL> ALTER USER tom
IDENTIFIED BY ab1rose;
Alter success.
<질의> 사용자의 기본 테이블스페이스를 변경하라.
iSQL> ALTER USER tom
DEFAULT TABLESPACE uare_data;
Alter success.
<질의> 사용자 rose2의 패스워드 관리 정책을 변경하는 구문이다.
iSQL> ALTER USER rose2 LIMIT (FAILED_LOGIN_ATTEMPTS 7, PASSWORD_LOCK_TIME 7);
<질의> 사용자 rose2의 패스워드 관리 정책을 다음과 같이 변경한다. 로그인을 시도하는 횟수에 제한을 하지 않고, 계정의 잠금 상태가 10일동안 유지하도록 한다.
iSQL> ALTER USER rose2 LIMIT (FAILED_LOGIN_ATTEMPTS UNLIMITED,
PASSWORD_LOCK_TIME 10);
<질의> rose2 계정을 잠근 후, rose2 사용자로 접속이 되지 않은 것을 보여준다.
ALTER USER rose2 ACCOUNT LOCK;
iSQL> CONNECT rose2/rose2;
[ERR-31370 : The account is locked.]