Oracle DB 許可權與角色
啟用資料字典保護:
可以通過設定初始化引數O7_DICTIONARY_ACCESSIBILITY 為false來保護資料字典。
此引數可以防止使用者(擁有任何系統許可權即是在SYS模式物件的許可權的使用者)來使用這些資料字典。
oracle資料庫提供高度細化的許可權。
一個這樣的特權,通常所說的任何特權,通常授予唯一的應用程式的owners和個人的資料庫管理員。
例如,可以授予DROP ANY TABLE 的許可權給一個應用程式所有者,通過開啟或關閉的07_DICTIONARY_ACCESSIBILITY初始化引數,免遭意外或惡意使用的任何特權,可以保護Oracle資料字典。
啟用資料字典保護工作流
-
使用em登陸到Oracle Enterprise Manager Database Control (Database Control).
-
點選Server"伺服器",點選Initialization Parameters“初始化引數”。
-
搜尋O7_DICTIONARY_ACCESSIBILITY這個引數。
-
將
O7_DICTIONARY_ACCESSIBILTY
設定為FALSE。
-
點選應用,然後重啟資料庫。
O7_DICTIONARY_ACCESSIBILITY引數:
O7_DICTIONARY_ACCESSIBILITY控制對系統許可權的限制。如果該引數被設定為true時,sys模式中的物件都可以訪問資料字典。預設設定為false,確保系統許可權被允許訪問其他任何模式,而不能訪問sys模式。
例如,O7_DICTIONARY_ACCESSIBILITY設定為false,那麼SELECT ANY TABLE
的許可權允許訪問除了sys模式(資料字典不能被訪問)中任何檢視或表。系統許可權EXECUTE
ANY PROCEDURE ,可以訪問任何模式除了sys模式。
如果這個引數設定為falise,你需要訪問在sys模式的物件,那麼必須明確授予物件許可權。以下角色,可以授予資料庫管理員,也允許訪問字典物件:
-
SELECT_CATALOG_ROLE
-
EXECUTE_CATALOG_ROLE
-
DELETE_CATALOG_ROLE