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.查看角色(只能查看登陸用戶擁有的角色)所包含的權限
  select * from role_sys_privs where role='DBA';


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;
 
比如我要查看用戶 XXX的擁有的權限:
select * from dba_sys_privs where grantee='XXX';
 
GRANTEE                        PRIVILEGE                                ADMIN_OPTION
------------------------------ ---------------------------------------- ------------
XXX                           CREATE TRIGGER                           NO
XXX                           UNLIMITED TABLESPACE                     NO


比如我要查看用戶 XXX的擁有的角色:
select * from dba_role_privs where grantee='XXX';
 
GRANTEE   GRANTED_ROLE   ADMIN_OPTION  DEFAULT_ROLE
------------------------------ ------------------------------ ------------ ------------
XXX                           DBA                         NO              YES


查看一個用戶所有的權限及角色
select privilege from dba_sys_privs where grantee='XXX'
union
select privilege from dba_sys_privs where grantee in 
(select granted_role from dba_role_privs where grantee='XXX' ); 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM