Oracle用户、角色、权限(系统权限,对象权限)的数据字典

1.三者的字典表

  • 1.1 用户

查看所有用户及关联的默认表空间
SQL> select username,account_status,default_tablespace,temporary_tablespace from dba_users;
查看所有用户的创建时间及UID
SQL> select * from all_users;
查看当前登录用户的信息
SQL> select * from user_users;
  • 1.2 角色

SQL> select * from dba_roles;

  • 1.3 权限

分为系统权限与对象权限
select * from system_privilege_map;
select * from table_privilege_map;

2.三者之间关系的字典表

这类关系字典表的后缀都包含“_privs”

  • 2.1用户与角色

用户拥有的角色

select * from dba_role_privs where grantee = 'USER1';
select * from user_role_privs;
select * from role_role_privs;

user_role_privs和role_role_privs 都是dba_role_privs的子集.

dba_role_privs的grantee字段包括用户名与角色名.

user_role_privs的username字段包括操作用户的用户名.

role_role_privs的role字段只是角色名.

  • 2.2用户与权限

用户拥有的系统权限

select * from dba_sys_privs;
select * from user_sys_privs;

用户拥有的对象权限

select * from dba_tab_privs;

select * from all_tab_privs;

select * from user_tab_privs;

select * from dba_col_privs;

select * from all_col_privs;

select * from user_col_privs;
  • 角色与权限

查询授出去的对象权限(通常是属主自己查)

select * from role_sys_privs;
select * from role_tab_privs;

3 其他

查询授出去的对象权限(通常是属主自己查)

select * from user_tab_privs_made;
select * from all_tab_privs_made;

用户拥有的对象权限

select * from user_tab_privs_recd;
select * from all_tab_privs_recd;

用户分配出去的列的对象权限

select * from user_col_privs_made;
select * from all_col_privs_made;

用户拥有的关于列的对象权限

select * from user_col_privs_recd;
select * from all_col_privs_recd;

你可能感兴趣的:(Oracle用户、角色、权限(系统权限,对象权限)的数据字典)