oracle10g database vault 訪問Realms相關的資料字典
oracle10g database vault安裝成功後可以使用vault管理員賬號建立域(realm),新增使用者物件到域等操作。但是檢視域相關的資料字典卻非常麻煩。
比如檢視DBA_DV_REALM, DBA_DV_REALM_AUTH, DBA_DV_OBJECT. 只有使用dvsys使用者才能檢視這些資料字典,而dvsys使用者又是被鎖定狀態,即使用database vault owner使用者或者sys使用者都無法將其解鎖。 我使用的辦法非常麻煩,但是可行。首先使用一系列的操作將database vault禁用,使用sys使用者為dvsys解鎖。然後再啟用database vault。 這樣就可以啟用dvsys使用者來檢視上述的各個資料字典。
本篇部落格涉及到禁用database vault的操作,但不是解除安裝database vault。 10.2.4.0版本並沒有提供解除安裝工具或指令碼,手工解除安裝還是比較麻煩的。
下面來看看我的具體操作
(1) dvsys使用者被鎖定,無法使用
SYS@dv > conn dvsys/dv_12345
ERROR:
ORA-28000: the account is locked
Warning: You are no longer connected to ORACLE.
@ > conn dvowner/dv_12345
Connected.
(2) 使用database vault管理員賬號無許可權解鎖dvsys
DVOWNER@dv > alter user dvsys account unlock;
alter user dvsys account unlock
*
ERROR at line 1:
ORA-01031: insufficient privileges
(3) 使用sys使用者無許可權解鎖dvsys
DVOWNER@dv > conn / as sysdba
Connected.
SYS@dv > alter user dvsys account unlock;
alter user dvsys account unlock
*
ERROR at line 1:
ORA-01031: insufficient privileges
(4) 禁用database vault
$ cd $ORACLE_HOME/rdbms/lib
$ make -f dv_off
$ cd $ORACLE_HOME/bin
$ relink all
$ sqlplus / as sysdba
SYS@dv > startup
$ dvca -action disable -service dv -sys_passwd oracle -owner_account dvowner -owner_passwd dv_12345 -nodecrypt
(5) 驗證database vault禁用效果
$ sqlplus / as sysdba
SYS@dv > select * from v$option where parameter='Oracle Database Vault';
PARAMETER
----------------------------------------------------------------
VALUE
----------------------------------------------------------------
Oracle Database Vault
FALSE
(6) 使用sys解鎖dvsys
SYS@dv > alter user dvsys account unlock;
(7) 使用dvsys使用者可以訪問dba_dv_realm資料字典
SYS@dv > conn dvsys/dv_12345
DVSYS@dv > desc dba_dv_realm
Name Null? Type
----------------------------------------- -------- ----------------------------
NAME NOT NULL VARCHAR2(90)
DESCRIPTION VARCHAR2(1024)
AUDIT_OPTIONS NOT NULL NUMBER
ENABLED NOT NULL VARCHAR2(1)
(8) 使用dvsys建立域myrealm2
DVSYS@dv > exec dbms_macadm.create_realm('myrealm2','myrealm2','y',1);
(9) 新增scott到域myrealm2
DVSYS@dv > exec dbms_macadm.add_object_to_realm('myrealm2','scott','%','%');
在database vault被禁用時使用sys使用者還能訪問域中的資料
SYS@dv > select count(*) from scott.emp;
COUNT(*)
----------
14
SYS@dv > shutdown immediate;
(10) 啟用database vault
$ cd $ORACLE_HOME/rdbms/lib
$ make -f dv_on
$ cd $ORACLE_HOME/bin
$ relink all
$ export DISPLAY=127.0.0.1:0.0
$ dvca -action enable -service dv -sys_passwd oracle -owner_account dvowner -owner_passwd dv_12345 -nodecrypt
(11) 使用dvsys使用者檢視域資料字典
DVSYS@dv > select * from dba_dv_realm where name like 'myrealm%';
NAME DESCRIPTION AUDIT_OPTIONS E
-------------------- -------------------- ------------- -
myrealm myrealm 1 Y
myrealm2 myrealm2 1 Y
DVSYS@dv > col realm_name for a20
DVSYS@dv > col owner for a20
DVSYS@dv > col object_name for a10
DVSYS@dv > col object_type for a10
(12) 使用dvsys使用者檢視域中包含哪些物件
DVSYS@dv > select * from dba_dv_realm_object where realm_name like 'myrealm%';
REALM_NAME OWNER OBJECT_NAM OBJECT_TYP
-------------------- -------------------- ---------- ----------
myrealm2 SCOTT % %
(13) 新增sys為域參與者,這樣sys使用者也可以訪問scott中的資料
DVSYS@dv > exec dbms_macadm.add_auth_to_realm('myrealm2','sys');
DVSYS@dv > select * from dba_dv_realm_auth where realm_name like 'myrealm%';
REALM_NAME GRANTEE AUTH_RULE_SET_NAME AUTH_OPTIONS
------------------------------ ---------- -------------------- --------------------
myrealm2 SYS Participant
(14) 使用sys使用者訪問scott下emp表
SYS@dv > conn / as sysdba
Connected.
SYS@dv > select count(*) from scott.emp;
COUNT(*)
----------
14
實驗完畢
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29047826/viewspace-1710784/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 關於Oracle Database Vault介紹OracleDatabase
- ORACLE database vaultOracleDatabase
- Oracle相關資料字典檢視Oracle
- 關於python訪問字典的方法Python
- [20230214]資料庫連線訪問asm相關檢視.txt資料庫ASM
- MySQL關於資料字典的一個疑問MySql
- MySQL 8.0 20個 InnoDB 及資料字典相關的新特性MySql
- python的字典及相關操作Python
- 字典及相關操作
- [20230216]資料庫連線訪問asm相關檢視2.txt資料庫ASM
- 資料庫事物相關問題資料庫
- 在Golang中如何正確地使用database/sql包訪問資料庫GolangDatabaseSQL資料庫
- 無法訪問請求的頁面,因為該頁的相關配置資料無效問題的解決
- 老Python總結的字典相關知識Python
- 關於dataguard需要查詢的資料字典
- Java訪問SSL enabled DB2 DatabaseJavaDB2Database
- Spring資料訪問Spring
- JavaScript變數,資料和記憶體的相關問題JavaScript變數記憶體
- 蒐集到的Weex 相關資料
- 運維相關的資料整理運維
- database資料庫的資料結構Database資料庫資料結構
- JDBC資料庫訪問JDBC資料庫
- 資料訪問 - EntityFramework整合Framework
- 資料的相關性或因果關係 - KDnuggets
- 雲關係型資料庫(Relational Database Service,RDS)資料庫Database
- Oracle10g刪除資料檔案Oracle
- crane:字典項與關聯資料處理的新思路
- SpringBoot資料訪問之Druid資料來源的使用Spring BootUI
- 資料庫 (相關練習)資料庫
- 資料分析相關軟體
- JTS相關資料和示例
- camunda相關資料介紹
- 【SpringBoot實戰】資料訪問Spring Boot
- 微課sql最佳化(10)、關於資料訪問方法SQL
- 利用Data vault對資料倉儲建模
- InnoDB資料字典--字典表載入
- 關於盒模型相關的問題模型
- ThinkCMF資料字典
- MySQL資料字典MySql