2017最新Oracle關係資料庫系統介紹論文

來源:果殼範文吧 3.17W

Oracle關係資料庫系統以其卓越的效能獲得了廣泛的應用,而保證資料庫安全性是資料庫管理工作的重要內容。本文在總結Oracle資料庫安全管理工作的基礎上,對Oracle資料庫系統密碼檔案的建立、使用和維護作了詳細的介紹,供大家參考。

2017最新Oracle關係資料庫系統介紹論文

關鍵詞:Oracle資料庫密碼檔案

在Oracle資料庫系統中,使用者如果要以特權使用者身份(INTERNAL/SYSDBA/SYSOPER)登入Oracle資料庫可以有兩種身份驗證的方法:即使用與作業系統整合的身份驗證或使用Oracle資料庫的密碼檔案進行身份驗證。因此,管理好密碼檔案,對於控制授權使用者從遠端或本機登入Oracle資料庫系統,執行資料庫管理工作,具有重要的意義。

Oracle資料庫的密碼檔案存放有超級使用者INTERNAL/SYS的口令及其他特權使用者的使用者名稱/口令,它一般存放在ORACLE_HOME\DATABASE目錄下。

一、密碼檔案的建立

在使用Oracle Instance Manager建立一資料庫例項的.時侯,在ORACLE_HOME\DATABASE目錄下還自動建立了一個與之對應的密碼檔案,檔名為,其中SID代表相應的Oracle資料庫系統識別符號。此密碼檔案是進行初始資料庫管理工作的基矗在此之後,管理員也可以根據需要,使用工具手工建立密碼檔案,命令格式如下:

C:\ >ORAPWDFILE=< FILENAME >PASSWORD =< PASSWORD > ENTRIES=< MAX_USERS >

各命令引數的含義為:

FILENAME:密碼檔名;

PASSWORD:設定INTERNAL/SYS帳號的口令;

MAX_USERS:密碼檔案中可以存放的最大使用者數,對應於允許以SYSDBA/SYSOPER許可權登入資料庫的最大使用者數。由於在以後的維護中,若使用者數超出了此限制,則需要重建密碼檔案,所以此引數可以根據需要設定得大一些。

有了密碼檔案之後,需要設定初始化引數REMOTE_LOGIN_PASSWORDFILE來控制密碼檔案的使用狀態。

二、設定初始化引數REMOTE_LOGIN_PASSWORDFILE

在Oracle資料庫例項的初始化引數檔案中,此引數控制著密碼檔案的使用及其狀態。它可以有以下幾個選項:

NONE:指示Oracle系統不使用密碼檔案,特權使用者的登入通過作業系統進行身份驗證;

EXCLUSIVE:指示只有一個數據庫例項可以使用此密碼檔案。只有在此設定下的密碼檔案可以包含有除INTERNAL/SYS以外的使用者資訊,即允許將系統許可權SYSOPER/SYSDBA授予除INTERNAL/SYS以外的其他使用者。

SHARED:指示可有多個數據庫例項可以使用此密碼檔案。在此設定下只有INTERNAL/SYS帳號能被密碼檔案識別,即使檔案中存有其他使用者的資訊,也不允許他們以SYSOPER/SYSDBA的許可權登入。此設定為預設值。

在REMOTE_LOGIN_PASSWORDFILE引數設定為EXCLUSIVE、SHARED情況下,Oracle系統搜尋密碼檔案的次序為:在系統註冊庫中查詢ORA_SID_PWFILE引數值(它為密碼檔案的全路徑名);若未找到,則查詢ORA_PWFILE引數值;若仍未找到,則使用預設值ORACLE_HOME\DATABASE\;其中的SID代表相應的Oracle資料庫系統識別符號。

三、向密碼檔案中增加、刪除使用者

當初始化引數REMOTE_LOGIN_PASSWORDFILE設定為EXCLUSIVE時,系統允許除INTERNAL/SYS以外的其他使用者以管理員身份從遠端或本機登入到Oracle資料庫系統,執行資料庫管理工作;這些使用者名稱必須存在於密碼檔案中,系統才能識別他們。由於不管是在建立資料庫例項時自動建立的密碼檔案,還是使用工具手工建立的密碼檔案,都只包含INTERNAL/SYS使用者的資訊;為此,在實際操作中,可能需要向密碼檔案新增或刪除其他使用者帳號。

由於僅被授予SYSOPER/SYSDBA系統許可權的使用者才存在於密碼檔案中,所以當向某一使用者授予或收回SYSOPER/SYSDBA系統許可權時,他們的帳號也將相應地被加入到密碼檔案或從密碼檔案中刪除。由此,向密碼檔案中增加或刪除某一使用者,實際上也就是對某一使用者授予或收回SYSOPER/SYSDBA系統許可權。

要進行此項授權操作,需使用SYSDBA許可權(或INTERNAL帳號)連入資料庫,且初始化引數REMOTE_LOGIN_PASSWORDFILE的設定必須為EXCLUSIVE。具體操作步驟如下:

建立相應的密碼檔案;

設定初始化引數REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE;

使用SYSDBA許可權登入: CONNECTSYS/internal_user_passswordASSYSDBA;

啟動資料庫例項並開啟資料庫;

建立相應使用者帳號,對其授權(包括SYSOPER和SYSDBA): 授予許可權:GRANTSYSDBATOuser_name;

收回許可權:REVOKESYSDBAFROMuser_name;

現在這些使用者可以以管理員身份登入資料庫系統了;

四、使用密碼檔案登入

有了密碼檔案後,使用者就可以使用密碼檔案以SYSOPER/SYSDBA許可權登入Oracle資料庫例項了,注意初始化引數REMOTE_LOGIN_PASSWORDFILE應設定為EXCLUSIVE或SHARED。任何使用者以SYSOPER/SYSDBA的許可權登入後,將位於SYS使用者的Schema之下,以下為兩個登入的例子:

1. 以管理員身份登入:

假設使用者scott已被授予SYSDBA許可權,則他可以使用以下命令登入:

CONNECTscott/tigerASSYSDBA

2. 以INTERNAL身份登入:

CONNECTINTERNAL/INTERNAL_PASSWORD

熱門標籤