查看用户、权限、角色的下令和视图

查看用户、权限、角色的命令和视图

查看用户、权限、角色的命令和视图

 

1.查看所有用户:

select * from dba_users;

select * from all_users;

select * from user_users;

2.查看用户系统权限:

select * from dba_sys_privs;

select * from session_privs;

select * from user_sys_privs;

3.查看用户对象权限:

select * from dba_tab_privs;

select * from all_tab_privs;

select * from user_tab_privs;

4.查看所有角色:

select * from dba_roles;

5.查看用户所拥有的角色:

select * from dba_role_privs;

select * from user_role_privs;

 

 

1.       以下语句可以查看Oracle提供的系统权限

select name from sys.system_privilege_map

 

2.       查看一个用户的所有系统权限(包含角色的系统权限)

select privilege from dba_sys_privs where grantee='DATAUSER' 

union 

select privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee='DATAUSER' );  

 

3.       sql 查询用户授予的角色

select * from dba_role_privs where grantee='这里写你的用户名(大写)'

 

 

与权限,角色相关的视图大概有下面这些:

 

1DBA_SYS_PRIVS:   查询某个用户所拥有的系统权限。

2USER_SYS_PRIVS:  查询当前用户所拥有的系统权限。

3SESSION_PRIVS:    查询当前用户所拥有的全部权限。

4ROLE_SYS_PRIVS:  查询某个角色所拥有的系统权限。

   注意: 要以SYS用户登陆查询这个视图,否则返回空。

 

5ROLE_ROLE_PRIVS:    当前角色被赋予的角色

6SESSION_ROLES:      当前用户被激活的角色

7USER_ROLE_PRIVS:   当前用户被授予的角色

 

针对表的访问权限的视图:

TABLE_PRIVILEGES

ALL_TAB_PRIVS

ROLE_TAB_PRIVS: 某个角色被赋予的相关表的权限