SELECT * FROM session_privs;
典型輸出(部分):
PRIVILEGE
------------------------------
CREATE SESSION
UNLIMITED TABLESPACE
CREATE TABLE
CREATE CLUSTER
CREATE VIEW
CREATE SEQUENCE
CREATE PROCEDURE
CREATE TRIGGER
CREATE ANY DIRECTORY
CREATE TYPE
CREATE OPERATOR
CREATE INDEXTYPE
DEBUG CONNECT SESSION
SQL> CONN sys/password@host:port/service AS SYSDBA
-- 授予建立會話權限(最基本)
GRANT CREATE SESSION TO conquer;
-- 常用組合授權
GRANT CREATE TABLE, CREATE VIEW, CREATE SEQUENCE, CREATE PROCEDURE TO conquer;
GRANT UNLIMITED TABLESPACE TO conquer; -- 分配無限表空間配額
GRANT SELECT, INSERT, UPDATE ON schema.table_name TO conquer;
-- 建立業務角色
CREATE ROLE app_read_only;
GRANT SELECT ON schema.table1 TO app_read_only;
GRANT SELECT ON schema.table2 TO app_read_only;
-- 授予用戶角色
GRANT app_read_only TO conquer;
SELECT * FROM dba_sys_privs WHERE grantee = 'CONQUER';SELECT * FROM dba_tab_privs WHERE grantee = 'CONQUER';SELECT * FROM dba_role_privs WHERE grantee = 'CONQUER';REVOKE CREATE TABLE FROM conquer;DBA、ANY 權限濫用。APP_DEV、APP_READ、DW_ETL),用戶授角色而非離散權限。DBA_SYS_PRIVS、DBA_TAB_PRIVS,清理離職/專案結束用戶權限。