oracle 查看用户、权限、角色

来源:互联网 发布:淘宝的外卖叫什么 编辑:程序博客网 时间:2024/05/18 20:05


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

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; 


与权限,角色相关的视图大概有下面这些:
   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 本身的数据字典设计很合理, 因为DBA_xxx, ALL_xxx,USER_xxx
让人一看大概就知道这个视图是干什么用的. 本文简要总结了一下与权限,角色相关的视图.


原创粉丝点击