目录
一、两种类型用户权限
1、两种类型的用户权限
(1)系统权限:允许用户在数据库中执行特定操作
(2)对象权限:允许用户访问和操作特定对象
2、系统权限
(1)每个SYSTEM权限允许用户执行特定的数据库操作或数据库类的操作。
(2)administrators具有特殊的SYSTEM特权。
(3)带有ANY子句的SYSTEM特权意味着该特权适用于所有除SYS以外的schema。
(4)如果授予SYSTEM特权时启用了“ADMIN OPTION”选项,则会启用被授予者以管理SYSTEM权限并将其授予其他用户。
3、对象权限
(1)允许用户对特定对象执行特定操作。
(2)没有特定权限,用户只能访问自己的对象。
(3)对象特权可通过以下方式授予:
-对象的所有者
-管理员
-已被明确授予在对象上授予特权权限的人
(4)授予对象特权的SQL语法为: .
GRANT <object_ privilege> ON <object> TO <grantee clause> [WITH GRANT OPTION]
二、多租户授权
1、common用户
通常:在CDB的所有容器中授予用户权限。
SQL> CONNECT / AS SYSDBA
SQL> GRANT create session TO c##c admin1 CONTAINER=ALL;
2、local用户
本地:仅在单个PDB中授予用户权限。
SQL> CONNECT SYS@PDB1 AS SYSDBA
SQL> GRANT logmining TO 1 user1 ;
3、授予和吊销SYSTEM特权
4、授予和撤销对象权限
三、角色(略)
四、系统权限和角色权限的查看
1、系统权限的查看
SQL> select privilege from role_sys_privs where role= ' PDB_DBA' order by 1;
2、角色权限的查看
SQL> select granted role from dba_role_privs where grantee ='PDB_DBA' order by 1;