内置角色connect与resource
一般情况下,在新建数据库用户后,都会习惯性的给用户授权CONNECT角色和RESOURCE角色,授权语句:
GRANT connect,resource TO 用户;
但是这两个内置的角色具体包含那些权限,却不甚清楚。我们可以通过查询dba_sys_privs,来查看一下
SELECT * FROM dba_sys_privs WHERE grantee IN ('RESOURCE', 'CONNECT') ORDER BY 1;
CONNECT:仅有CREATE SESSION的权限
RESOURCE:仅具有CREATE CLUSTER,INDEXTYPE,OPERATOR,PROCEDEURE,SEQUENCE,TABLE,TRIGGER,TYPE的权限。
需要注意的一点是,当把resource角色授予一个user的时候,不但会授予ORACLE resource角色本身的权限,而且还有unlimited tablespace权限,但是,当把resource授予一个role时,就不会授予unlimited tablespace权限。
查询权限语句
查询对象权限:
SELECT * FROM dba_tab_privs a WHERE a.grantee = '用户';
查询系统权限:
SELECT * FROM dba_role_privs a WHERE a.GRANTEE = '用户';
查询系统权限:
SELECT * FROM dba_sys_privs a WHERE a.GRANTEE = '用户';