查看用户、权限、角色的下令和视图
查看用户、权限、角色的命令和视图
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='这里写你的用户名(大写)'
与权限,角色相关的视图大概有下面这些:
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: 某个角色被赋予的相关表的权限