您好,登錄后才能下訂單哦!
SQL> select * from sys.user_astatus_map; 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) & LOCKED 9 rows selected
通過上面的查詢我們可以看到在Oracle中accunt總共有9種不同的狀態,對應dba_users視圖中的account_status字段。下面我分別就每種狀態的含義和出現的情況做個簡單的說明,以便于今后的系統管理和維護。
分析上面的9種狀態不難看出,其實獨立的狀態只有OPEN、EXPIRED、LOCKED、EXPIRED(GRACE)、LOCKED(TIMED) 5種形式。其他4種不過是前面幾種形式的組合而已。
OPEN: 這個是大家最常見的,就是表示這個是可用的,沒有任何限制的帳戶
LOCKED:表示這個帳戶被DBA鎖定. 一般通過alter user username account lock(unlock);
EXPIRED:表示該帳戶被設置為口令到期,要求用戶在下次logon的時候修改口令(系統會在該account被設置為expire后的第一次登陸是提示你修改密碼)
EXPIRED(GRACE):當設置了grace以后(第一次成功登錄后到口令到期后有多少天時間可改變口令,在這段時間內,帳戶被提醒修改口令并可以正常登陸,account_status顯示為EXPIRED(GRACE).
LOCKED(TIMED):這種狀態表示失敗的login次數超過了FAILED_LOGIN_ATTEMPTS,被系統自動鎖定,需要注意的是,在Oracle 10g中,默認的DEFAULT值是10次.
剩下的幾種情況就是上面的組合了:
EXPIRED & LOCKED
SQL> alter user study password expire account lock;
用戶已更改。
SQL> select account_status from dba_users where username='STUDY';
ACCOUNT_STATUS
--------------------------------
EXPIRED & LOCKED
SQL>
EXPIRED(GRACE) & LOCKED(TIMED)當account_stutus為EXPIRED(GRACE)的時候,用戶又失敗的login次數超過了FAILED_LOGIN_ATTEMPTS,被系統自動鎖定
EXPIRED & LOCKED(TIMED)當設置了account expire后,用戶又失敗的login次數超過了FAILED_LOGIN_ATTEMPTS,被系統自動鎖定
EXPIRED(GRACE) & LOCKED用戶account_status為EXPIRED(GRACE)后,又被DBA 手工鎖定帳戶后的狀態。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。