| 角色 | 核心權限 |
|---|---|
| CONNECT | 創建表、視圖、序列、同義詞、DB Link、修改會話 |
| DBA | 所有系統權限(含 ADMIN OPTION),可授權給他人 |
| RESOURCE | 創建表、序列、觸發器、過程、包等程序對象 |
| EXP_FULL_DATABASE / IMP_FULL_DATABASE | 完整導出/導入權限 |
| SELECT_CATALOG_ROLE | 查詢數據字典表/視圖 |
| DELETE_CATALOG_ROLE / EXECUTE_CATALOG_ROLE | 刪除/執行系統包 |
生成腳本示例:
CREATE ROLE "TEMPROLE" IDENTIFIED BY "temprole";
GRANT ALTER ANY INDEX TO "TEMPROLE" WITH ADMIN OPTION;
GRANT SELECT ANY TABLE TO "TEMPROLE" WITH ADMIN OPTION;
GRANT "CONNECT" TO "TEMPROLE" WITH ADMIN OPTION;
GRANT "DBA" TO "TEMPROLE" WITH ADMIN OPTION;
BEGIN
DBMS_RESOURCE_MANAGER_PRIVS.GRANT_SWITCH_CONSUMER_GROUP(
GRANTEE_NAME => 'TEMPROLE',
CONSUMER_GROUP => 'DEFAULT_CONSUMER_GROUP',
GRANT_OPTION => FALSE);
END;
腳本文件:第8章\createrole.sql,截圖見圖。

直接運行 createrole.sql 即可完成創建,結果確認見圖。

ALTER ROLE "TEMPROLE" IDENTIFIED EXTERNALLY;
腳本:alterrole.sql
REVOKE "DBA" FROM "TEMPROLE";
腳本:revokerole.sql
DROP ROLE TEMPROLE;
腳本:droprole.sql,確認對話框見圖。
