查看用户、权限、角色的命令和视图
a
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;
b
概述
与权限,角色相关的视图大概有下面这些:
DBA_SYS_PRIVS: 查询某个用户所拥有的系统权限
USER_SYS_PRIVS: 查询当前用户所拥有的系统权限
SESSION_PRIVS: 查询当前用户所拥有的全部权限
ROLE_SYS_PRIVS: 查询某个角色所拥有的系统权限
注意: 要以SYS用户登陆查询这个视图,否则返回空.
ROLE_ROLE_PRIVS: 当前角色被赋予的角色
SESSION_ROLES: 当前用户被激活的角色
USER_ROLE_PRIVS: 当前用户被授予的角色
另外还有针对表的访问权限的视图:
TABLE_PRIVILEGES
ALL_TAB_PRIVS
ROLE_TAB_PRIVS: 某个角色被赋予的相关表的权限
oracle与用户角色权限相关的视图
Oracle 本身的数据字典设计我个人觉得很合理, 因为DBA_xxx, ALL_xxx,USER_xxx 让人一看大概就知道这个视图是干什么用的. 本文简要总结了一下与权限,角色相关的视图.

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

1、DBA_SYS_PRIVS: 查询某个用户所拥有的系统权限。
2、USER_SYS_PRIVS: 查询当前用户所拥有的系统权限。
3、SESSION_PRIVS: 查询当前用户所拥有的全部权限。
4、ROLE_SYS_PRIVS: 查询某个角色所拥有的系统权限。
注意: 要以SYS用户登陆查询这个视图,否则返回空。

5、ROLE_ROLE_PRIVS: 当前角色被赋予的角色
6、SESSION_ROLES: 当前用户被激活的角色
7、USER_ROLE_PRIVS: 当前用户被授予的角色

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

TABLE_PRIVILEGES

ALL_TAB_PRIVS

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