oracle O7_DICTIONARY_ACCESSIBILITY 引數
O7_DICTIONARY_ACCESSIBILITY是用來控制select any table許可權是否可以訪問data dictionary的,主要用來保護資料字典。oracle建議把O7_DICTIONARY_ACCESSIBILITY引數設為 false,9i及以上版本預設為false,8i及以前版本預設為true。
如果該引數為true,那麼被賦予select any table許可權的使用者可以訪問所有資料字典。如果該引數被設定為false那麼即使使用者被被賦予了select any table許可權還是不能訪問資料字典(此時需要賦予使用者select any dictionary許可權,才能使使用者有許可權訪問資料字典)
下面貼一些簡單的實驗過程
SQL> select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
PL/SQL Release 11.2.0.3.0 - Production
--資料庫版本為11.2.0.3
一:我們先看O7_DICTIONARY_ACCESSIBILITY引數設為 false時,使用者擁有select any table 許可權時能否查詢資料字典
SQL> show parameter o7
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY boolean FALSE
--引數為預設值false
SQL> create user scott identified by oracle default tablespace users temporary tablespace temp;
User created.
--新建scott使用者
SQL> grant connect,select any table to scott;
Grant succeeded.
--給新建使用者賦予connect和select any table許可權
SQL> conn scott/oracle
Connected.
SQL> show user
USER is "SCOTT"
SQL> select count(1) from dba_objects;
select count(1) from dba_objects
*
ERROR at line 1:
ORA-00942: table or view does not exist
--結論:O7_DICTIONARY_ACCESSIBILITY 引數為false,scott使用者擁有select any table許可權也無法查資料字典
現在我們再來看O7_DICTIONARY_ACCESSIBILITY 引數為true時情況
SQL> alter system set O7_DICTIONARY_ACCESSIBILITY=true scope=spfile;
System altered.
--注意靜態引數修改後要重啟資料庫才能生效
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup;
--重啟資料庫
SQL> conn scott/oracle
Connected.
SQL> select count(1) from dba_objects;
COUNT(1)
----------
13659
--以scott使用者查詢資料字典成功
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31397003/viewspace-2216820/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 核心引數Oracle
- Oracle:PDB 引數管理Oracle
- O7_Dictionary_Accessibility
- ORACLE並行相關的引數Oracle並行
- Oracle GoldenGate常用引數詳解OracleGo
- oracle rac 核心引數詳解Oracle
- Oracle Table建立引數說明Oracle
- Oracle JDBC ResultSet引數測試OracleJDBC
- 使用 XmlCommand 對Oracle傳引數XMLOracle
- Oracle RAC引數檔案管理Oracle
- [20190917]oracle引數deferred屬性.txtOracle
- Oracle面試寶典-引數篇Oracle面試
- Oracle RAC修改引數檔案位置Oracle
- Oracle ENABLE=broken引數與TCP KeepAliveOracleTCP
- 【Oracle】簡單引數也有講究,JOB_QUEUE_PROCESS引數調研Oracle
- Oracle中的sysctl.conf核心引數Oracle
- Oracle初始化引數的來源Oracle
- Oracle安裝相關Linux引數(轉)OracleLinux
- ORACLE中Cursor_sharing引數詳解Oracle
- Oracle 叢集心跳及其引數misscount/disktimeout/reboottimeOracleboot
- oracle 升級12c引數樣例Oracle
- oracle非同步IO之filesystemio_options引數Oracle非同步
- Oracle 10g expdp attach引數體驗Oracle 10g
- Oracle RAC一鍵部署002(引數檢查)Oracle
- Oracle direct path read相關隱含引數Oracle
- oracle中的processes,session,transaction引數詳解OracleSession
- EDBPPAS(Oracle相容版)Oracle與PostgreSQL相容模式的引數配置切換OracleSQL模式
- Oracle vs PostgreSQL Develop(23) - PL(pg)sql(引數宣告)OracleSQLdev
- Oracle RAC 重置db_recovery_file_dest_size引數Oracle
- Oracle RAC一鍵部署004(RAC引數校驗)Oracle
- 【PARAMETER】Oracle引數:MAX_IDLE_BLOCKER_TIME 解釋OracleBloC
- EDB PPAS(Oracle 相容版) Oracle與PostgreSQL 相容模式的引數配置切換OracleSQL模式
- Oracle 11G 隱含引數“_controlfile_autobackup_delay”Oracle
- Oracle undo保留時間的幾個相關引數Oracle
- 聊聊Oracle表空間Offline的三種引數(上)Oracle
- 聊聊Oracle表空間Offline的三種引數(中)Oracle
- 聊聊Oracle表空間Offline的三種引數(下)Oracle
- Oracle設定日誌引數-ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;OracleDatabase