一、超級管理員建立角色myrole(角色是權限的集合) sql
SQL>create role myrole; session
角色已建立。 ide
二、超級管理員會話權限和建立表的權限授予角色myrole spa
SQL>grant create session,create table to myrole; io
受權成功。 table
三、建立一個用戶zhangsan 登錄
SQL>create user zhangsan identified by zhangsan; 權限
用戶已建立。 tab
四、把角色myrole賦給用戶zhangsan 集合
SQL>grant myrole to zhangsan;
受權成功。
五、登陸zhangsan用戶
sqlplus zhangsan/zhangsan
出現提示鏈接成功。注意:並無給zhangsan用戶直接賦予建立session的權限,而是把具體的權限放到myrole角色裏了,沒把myrole角色賦給zhangsan用戶。
六、刪除角色
SQL>drop role myrole;
七、注意:有些系統權限沒法直接賦予角色
沒有的權限:alter table,drop table
有的權限:create table,create any table,alter any table,drop any table
表屬於某個用戶,而角色不屬於某個用戶。