Oracle

Oracle 12cR2 使用者可以無特權選擇表

  • December 3, 2021

今天我注意到一件有趣的事情。考慮一個生產和測試數據庫配備相同權限的系統。在生產數據庫中,一個使用者可以選擇另一個使用者下的表,而沒有選擇能力。但是,這個過程不會發生在測試數據庫中。生產數據庫中出現這種情況的原因可能是什麼?

生產數據庫權限:

ALTER ANY PROCEDURE
CREATE ANY CREDENTIAL
CREATE ANY JOB
CREATE ANY PROCEDURE
CREATE ANY RULE
CREATE ANY SEQUENCE
CREATE ANY TABLE
CREATE ANY TRIGGER
CREATE ANY TYPE
CREATE ANY VIEW
CREATE PROCEDURE
CREATE TABLE
CREATE TRIGGER
CREATE VIEW
DEBUG ANY PROCEDURE
EXECUTE ANY PROCEDURE
GRANT ANY PRIVILEGE
GRANT ANY ROLE



AQ_ADMINISTRATOR_ROLE
AUTHENTICATEDUSER
CONNECT
EXP_FULL_DATABASE
JAVA_ADMIN
JAVADEBUGPRIV
JAVA_DEPLOY
JAVAIDPRIV
JAVASYSPRIV
JAVAUSERPRIV


select * from dba_tab_privs where grantee='USER1' and owner='USER2' and table_name='TABLE_NAME_OWNED_BY_USER2' order by table_name, privilege;


no rows selected

但是 USER1 可以選擇這個表。

最好的祝福,

EXP_FULL_DATABASE角色包括SELECT ANY TABLE特權。

引用自:https://dba.stackexchange.com/questions/303465