select * from dba_role_privs; 授予用戶和其他角色的角色
select * from dba_sys_privs; 授予用戶和其他角色的系統權限
select * from dba_tab_privs; 數據庫中對象的所有授權
參考:查看角色 權限 Oracle 谷歌
DBA是用戶名,是角色名?角色名
=========================================
oracle 角色和權限的關系查看
例如:要查看 scott 具有的角色,可查詢 dba_role_privs;
SQL> select * from dba_role_privs where grantee='SCOTT';
//查詢 orale 中所有的系統權限,一般是dba
select * from system_privilege_map order by name;
//查詢 oracle 中所有對象權限,一般是dba
select distinct privilege from dba_tab_privs;
//查詢 oracle 中所有的角色,一般是dba
select * from dba_roles;
//查詢數據庫的表空間
select tablespace_name from dba_tablespaces;
問題 1:如何查詢一個角色包括的權限?
a.一個角色包含的系統權限
select * from dba_sys_privs where grantee='角色名'
select * from dba_sya_privs where grantee='COONNECT'; connect要大寫
另外也可以這樣查看:
select * from role_sys_privs where role='角色名'
b.一個角色包含的對象權限
select * from dba_tab_privs where grantee='角色名'
問題 2:oracle 究竟 多少種角色?
SQL> select * from dba_roles;
問題 3:如何查看某個用戶,具 什么樣的角色?
select * from dba_role_privs where grantee='用戶名'
顯示當前用戶可以訪問的所有數據字典視圖。
select * from dict where comments like '%grant%';
顯示當前數據庫的全稱
select * from global_name;
其它說明
數據字典記錄 oracle 數據庫的所有系統信息。通過查詢數據字典可以取得以
下系統信息:比如
1.對象定義情況
2.對象 占用空間大小
3.列信息
4.約束信息
...
但是因為這些個信息,可以通過 pl/sql developer工具查詢得到,所以這里我
就飄過。
=======================
詳解查看Oracle用戶權限的七種方法
查看Oracle用戶權限一般要通過一些實際操作,首先需要遍歷所有用戶,然后才是查看Oracle用戶的權限等等操作。希望本文能給大家有所幫助。
1.查看所有用戶:
- select * from dba_users;
- select * from all_users;
- select * from user_users;
2.查看用戶或角色系統權限(直接賦值給用戶或角色的系統權限):
- select * from dba_sys_privs;
- select * from user_sys_privs;
3.查看角色(只能查看登陸用戶擁有的角色)所包含的權限
- sql>select * from role_sys_privs;
4.查看用戶對象權限:
- select * from dba_tab_privs;
- select * from all_tab_privs;
- select * from user_tab_privs;
5.查看所有角色:
- select * from dba_roles;
6.查看用戶或角色所擁有的角色:
- select * from dba_role_privs;
- select * from user_role_privs;
7.查看哪些用戶有sysdba或sysoper系統權限(查詢時需要相應權限)
- select * from V$PWFILE_USERS