查詢用戶狀態
col username for a20
col account_status for a20
select username,account_status,LOCK_DATE,EXPIRY_DATE from user_users;
PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT
-------------------- ------------------------------ ------------------------------ ------------------------------
DEFAULT PASSWORD_LIFE_TIME PASSWORD 180
DEFAULT PASSWORD_REUSE_TIME PASSWORD UNLIMITED
DEFAULT PASSWORD_REUSE_MAX PASSWORD UNLIMITED
DEFAULT PASSWORD_VERIFY_FUNCTION PASSWORD NULL
DEFAULT PASSWORD_LOCK_TIME PASSWORD 1
DEFAULT PASSWORD_GRACE_TIME PASSWORD 7數據庫
6 rows selected.ide
FAILED_LOGIN_ATTEMPTS 整數設定登陸到Oracle 數據庫時能夠失敗的次數。一旦某用戶嘗試登陸數據庫的達到該值時,該用戶的賬戶就被鎖定,只能由DBA能解鎖。
PASSWORD_LIFE_TIME設定口令的有效時間(天數),一旦超過這一時間,必須從新設口令。缺省爲UNLIMITED.
PASSWORD_REUSE_TIME 許多系統不準用戶從新啓用過去用過的口令。該資源項設定了一個失效口令要通過多少天,用戶才能夠從新使用該口令。缺省爲UNLIMITED.
PASSWORD_REUSE_MAX從新啓用一個先前用過的口令前必須對該口令進行從新設置的次數(重複用的次數)。
PASSWORD_LOCK_TIME設定賬戶被鎖定的天數(當登陸失敗達到FAILED_LOGIN_ATTEMPTS時)。
PASSWORD_GRACE_TIME 設定在口令失效前,給予的從新設該口令的寬限天。當口令失效以後回,在登陸時會出現警告信息顯示該天數。若是沒有在寬限天內修改口令,口令將失效。
PASSWORD_VERITY_FUNCTION 該資源項容許調用一個PL/SQL 來驗證口令。Oracle公司已提供該應用 的腳本,可是隻要願意的話,用戶能夠制定本身的驗證腳本。該參數的設定就是PL/SQL函數的名稱。缺省爲NULL.
默認有效期爲180天
修改默認有效期天數爲無限
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;函數
修改默認寬限期限
ALTER PROFILE DEFAULT LIMIT PASSWORD_GRACE_TIME UNLIMITED;資源
帳號有多少中狀態?
SQL> select * from user_astatus_map;it
STATUS# STATUS
---------- ------------------------------------------------------------------------------------------------
0 OPEN
1 EXPIRED
2 EXPIRED(GRACE)
4 LOCKED(TIMED)
8 LOCKED
5 EXPIRED & LOCKED(TIMED)
6 EXPIRED(GRACE) & LOCKED(TIMED)
9 EXPIRED & LOCKED
10 EXPIRED(GRACE) & LOCKEDast
9 rows selected.
10類狀態說明:
五種基本狀態可分爲三類:
正常狀態;
鎖定狀態;
密碼過時狀態。
一、OPEN狀態表示用戶處於正常狀態。
二、LOCKED和LOCKED(TIMED)表示用戶被鎖定狀態。有以下兩種狀況:
DBA顯式的經過SQL語句對用戶進行鎖定;
被動的鎖定,默認狀況下若是密碼輸入錯誤超過10次鎖定;
該限制由PROFILE中的FAILED_LOGIN_ATTEMPTS控制,可查看視圖DBA_PROFILES。
DBA顯式鎖定用戶LOCKED
alter user [username] account lock;
輸入10次錯誤密碼後被動鎖定LOCKED(TIMED)
這個限制是由PROFILE中的FAILED_LOGIN_ATTEMPTS控制的,該信息能夠經過DBA_PROFILES視圖查詢登錄
三、EXPIRED和EXPIRED(GRACE)表示用戶密碼過時狀態。
修改PROFILE中的PASSWORD_LIFE_TIME實現密碼是否過時
alter profile default limit password_life_time unlimited;
密碼過時後也可修改PROFILE中的PASSWORD_GRACE_TIME控制使用的天數:
alter profile default limit password_grece_time 180;
對於密碼過時的用戶OPEN:a
alter user [username] identified by <password> account unlock;file