使用者連線到oracle的三種驗證方式

liuhaimiao發表於2017-09-13

  CREATE USER 語句將建立一個使用者。當一個使用者連線到ORACLE資料庫時,它必須被驗證。ORACLE中驗證有三種型別:

   Database 驗證使用者賬號

   external 驗證使用者賬號

   Global 驗證使用者賬號

  預設是資料庫驗證,當使用者連線到資料庫時,oracle將檢測使用者是否是資料庫的合法使用者,並且要提供正確的password;

        external驗證,oracle將只檢測使用者是否是合法使用者,password已經被網路或系統驗證了。

        global驗證也是隻檢測是否是合法使用者,password由oraclesecurity server驗證。

Database驗證使用者賬號

  資料庫驗證使用者賬號是驗證的預設型別,也是最普通的型別。建立一個賬號是piyush,口令是welcome的賬號,只需執行下面的命令:

CREATE USE piyush IDENTIFIED BY welcome;

          piyush可以透過下面的語句將口令改變為saraswatt:

ALTER USER piyush IDENTIFIED BY saraswati;

外部驗證使用者賬號

  使用者賬號進入資料庫時可以不提供口令,這種情況下代替資料庫識別口令的是客戶端
。外部驗證賬號有時也叫OPS$賬號,當他們最初在oracle6開始介紹時,oracle賬號都有關鍵字字首OPS$,這也就是為什麼init.ora 引數os_authent_prefix是OPS$--預設特徵與oracle6保持一致。os_authent_prefix定義的字串必須被預處理為用於Oracle外部識別賬號的賬號名。建立使用者appl的語句是:

CREATE USER ops$appl IDENTIFIED EATERNALLY

        但在通常情況下,os_authent_prefix將被設定為空,像下面這樣:

CREATE USER appl IDENTIFIED EATERNALLY

    這樣效果是一樣的,關鍵字IDENTIFIED EXTERNALLY告訴ORACLE這是一個外部識別賬號。

GLOBAL使用者賬號

      GLOBAL型別的使用者賬號資料庫不檢測口令,而是由X.509目錄伺服器檢測口令。建立一個GLOBAL型別的使用者賬號的方法是:

CREATE USER scott IDENTIFIED GLOBALLY AS "CN=scott,OU=divisional,O=sybex,C=US"

        關鍵字IDENTIFIED GLOBALLY AS表示建立的是一個GLOBAL型別的使用者賬號。

建立和更改使用者賬號

        CREATE USER 用於建立使用者賬號和給使用者賬號的屬性賦值。ALTER USER用於更改使用者賬號和屬性。但CREATE USER語句必須包括使用者名稱和口令。

        有部分屬效能用CREATER USER和ALTER USER語句設定,下面對是這些的屬性具體描述:

給使用者分配預設表空間

         表空間(tablespace)是放置表、索引、叢等使用者物件的。如果在create user語句中沒有包含表空間,那麼預設的是系統表空間。

CREATE USER piyush IDENTIFIED BY saraswati
DEFAULTE TABLESPACE user_data;

ALTER USER manoj DEFAULTE TABLESPACE dev1_data;

給使用者分配臨時表空間

  臨時表空間,顧名思義是臨時存放表、索引等使用者物件的臨時段。建立方法一樣。

CREATE USER piyush IDENTIFIED BY saraswati
Temporary TABLESPACE user_data;

ALTER USER manoj Temporary TABLESPACE dev1_data;

給使用者分配表空間的使用定額

  使用定額限制使用者在表空間中使用磁碟的數量。定額可以按位元組、千位元組、兆位元組或者無限制來制定。

CREATE USER piyush IDENTIFIED BY saraswati
DEFAULT TABLESPACE user_data
QUOTA UNLIMITED ON user_data
QUOTA 20M ON tools;

ALTER USER manoj QUOTA 2500K ON tools;

給使用者分配一個簡表

  簡表可以限制使用者在會話時消耗的資源。這些資源包括:連線資料庫的時間,空閒時間,每次會話的邏輯讀資料的數量等等,預設的簡表對資源無限制。

CREATE USER piyush IDENTIFIED BY saraswati
PROFILE TABLESPACE user_data;

ALTER USER manoj Temporary TABLESPACE dev1_data;

為使用者響應指定角色

  這個屬性只能由ALTER USER語句設定,試圖用CREATE USER語句設定將回返回一個例外。

ALTER USER manoj DEFAULT ROLE ALL EXCEPT salary_adm;

為使用者的password設定到期時間以便在使用者下次登入時更改

  當使用者的password到期,在下一次登入時將強迫修改password,oracle提示使用者輸入舊的password,然後輸入新的password。這項功能常用於新使用者,當新使用者用預設的password登入時必須修改立即修改password.

ALTER USER manoj IDENTIFIED BY welcome;
ALTER USER manoj PASSWORD EXPIRE;

鎖定賬號,是使用者不能登入

ALTER USER ql ACCOUNT LOCK

對賬號解鎖,以便使用者能登入資料庫

ALTER USER ql ACCOUNT UNLOCK

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/223653/viewspace-2144895/,如需轉載,請註明出處,否則將追究法律責任。

相關文章