国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

Oracle密碼文件的使用和維護

2024-08-29 13:43:18
字體:
來源:轉載
供稿:網友
  概要:Oracle關系數據庫系統以其卓越的性能獲得了廣泛的應用,而保證數據庫的安全性 是數據庫治理工作的重要內容。本文是筆者在總結Oracle數據庫安全治理工作的基礎上,對Oracle數據庫系統密碼文件的創建、使用和維護作了具體的介紹,供大家參考。    在Oracle數據庫系統中,用戶假如要以特權用戶身份(INTERNAL/SYSDBA/SYSOPER)登錄Oracle數據庫可以有兩種身份驗證的方法:即使用與操作系統集成的身份驗證或使用Oracle數據庫的密碼文件進行身份驗證。因此,治理好密碼文件,對于控制授權用戶從遠端或本機登錄Oracle數據庫系統,執行數據庫治理工作,具有重要的意義。    Oracle數據庫的密碼文件存放有超級用戶INTERNAL/SYS的口令及其他特權用戶的用戶名/口令,它一般存放在ORACLE_HOME\DATABASE目錄下。    一、密碼文件的創建:   在使用Oracle Instance Manager創建一數據庫實例的時侯,在ORACLE_HOME\DATABASE目錄下還自動創建了一個與之對應的密碼文件,文件名為PWDSID.ORA,其中SID代表相應的Oracle數據庫系統標識符。此密碼文件是進行初始數據庫治理工作的基礎。在此之后,治理員也可以根據需要,使用工具ORAPWD.EXE手工創建密碼文件,命令格式如下:
 
  C:\ >ORAPWD FILE=< 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\PWDSID.ORA;其中的SID代表相應的Oracle數據庫系統標識符。    三、向密碼文件中增加、刪除用戶:   當初始化參數REMOTE_LOGIN_PASSWORDFILE設置為EXCLUSIVE時,系統答應除INTERNAL/SYS以外的其他用戶以治理員身份從遠端或本機登錄到Oracle數據庫系統,執行數據庫治理工作;這些用戶名必須存在于密碼文件中,系統才能識別他們。由于不管是在創建數據庫實例時自動創建的密碼文件,還是使用工具ORAPWD.EXE手工創建的密碼文件,都只包含INTERNAL/SYS用戶的信息;為此,在實際操作中,可能需要向密碼文件添加或刪除其他用戶帳號。    由于僅被授予SYSOPER/SYSDBA系統權限的用戶才存在于密碼文件中,所以當向某一用戶授予或收回SYSOPER/SYSDBA系統權限時,他們的帳號也將相應地被加入到密碼文件或從密碼文件中刪除。由此,向密碼文件中增加或刪除某一用戶,實際上也就是對某一用戶授予或收回SYSOPER/SYSDBA系統權限。    要進行此項授權操作,需使用SYSDBA權限(或INTERNAL帳號)連入數據庫,且初始化參數REMOTE_LOGIN_PASSWORDFILE的設置必須為EXCLUSIVE。具體操作步驟如下: 
  創建相應的密碼文件;    設置初始化參數REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE;    使用SYSDBA權限登錄:
 
  CONNECT SYS/internal_user_passsword AS SYSDBA;    啟動數據庫實例并打開數據庫;    創建相應用戶帳號,對其授權(包括SYSOPER和SYSDBA): 
  授予權限:GRANT SYSDBA TO user_name; 
  收回權限:REVOKE SYSDBA FROM user_name;    現在這些用戶可以以治理員身份登錄數據庫系統了;    四、使用密碼文件登錄:
 
  有了密碼文件后,用戶就可以使用密碼文件以SYSOPER/SYSDBA權限登錄Oracle數據庫實例了,注重初始化參數REMOTE_LOGIN_PASSWORDFILE應設置為EXCLUSIVE或SHARED。任何用戶以SYSOPER/SYSDBA的權限登錄后,將位于SYS用戶的Schema之下,以下為兩個登錄的例子:
 
  1. 以治理員身份登錄:    假設用戶scott已被授予SYSDBA權限,則他可以使用以下命令登錄:    CONNECT scott/tiger AS SYSDBA    2. 以INTERNAL身份登錄:    CONNECT INTERNAL/INTERNAL_PASSWORD    五、密碼文件的維護:   1. 查看密碼文件中的成員:
 
  可以通過查詢視圖V$PWFILE_USERS來獲取擁有SYSOPER/SYSDBA系統權限的用戶的信息,表中SYSOPER/SYSDBA列的取值TRUE/FALSE表示此用戶是否擁有相應的權限。這些用戶也就是相應地存在于密碼文件中的成員。    2. 擴展密碼文件的用戶數量:    當向密碼文件添加的帳號數目超過創建密碼文件時所定的限制(即ORAPWD.EXE工具的MAX_USERS參數)時,為擴展密碼文件的用戶數限制,需重建密碼文件,具體步驟如下:    a) 查詢視圖V$PWFILE_USERS,記錄下擁有SYSOPER/SYSDBA系統權限的用戶信息;    b) 關閉數據庫;    c) 刪除密碼文件;    d) 用ORAPWD.EXE新建一密碼文件;    e) 將步驟a中獲取的用戶添加到密碼文件中。    3. 修改密碼文件的狀態:    密碼文件的狀態信息存放于此文件中,當它被創建時,它的缺省狀態為SHARED。可以通過改變初始化參數REMOTE_LOGIN_PASSWORDFILE的設置改變密碼文件的狀態。當啟動數據庫事例時,Oracle系統從初始化參數文件中讀取REMOTE_LOGIN_PASSWORDFILE參數的設置;當加載數據庫時,系統將此參數與口令文件的狀態進行比較,假如不同,則更新密碼文件的狀態。若計劃答應從多臺客戶機上啟動數據庫實例,由于各客戶機上必須有初始化參數文件,所以應確保各客戶機上的初始化參數文件的一致性,以避免意外地改變了密碼文件的狀態,造成數據庫登陸的失敗。    4. 修改密碼文件的存儲位置:    密碼文件的存放位置可以根據需要進行移動,但作此修改后,應相應修改系統注冊庫有關指向密碼文件存放位置的參數或環境變量的設置。    5. 刪除密碼文件:    在刪除密碼文件前,應確保當前運行的各數據庫實例的初始化參數REMOTE_LOGIN_PASSWORDFILE皆設置為NONE。在刪除密碼文件后,若想要以治理員身份連入數據庫的話,則必須使用操作系統驗證的方法進行登錄。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 左云县| 长治市| 长白| 阿图什市| 定陶县| 宁波市| 鄂尔多斯市| 平利县| 启东市| 正安县| 山阴县| 望谟县| 保定市| 汾西县| 克什克腾旗| 小金县| 莫力| 龙江县| 潞城市| 屏山县| 襄城县| 吉林市| 沙河市| 新野县| 河间市| 方城县| 太白县| 福鼎市| 永顺县| 阳高县| 定远县| 炎陵县| 横山县| 宁陕县| 贵阳市| 柘城县| 方山县| 肥西县| 新疆| 惠安县| 满洲里市|