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

 

 

注意:

1、以下語句可以查看Oracle提供的系統權限

select name from sys.system_privilege_map

 

2、查看一個用戶的所有系統權限(包含角色的系統權限)

Sql代碼  收藏代碼
  1. select privilege from dba_sys_privs where grantee='DATAUSER'  
  2. union  
  3. select privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee='DATAUSER' );


權限實際上是在數據字典中保存的,以下是一些經常遇到的權限數據字典:

ROLE_SYS_PRIVS

角色對應的系統權限

ROLE_TAB_PRIVS

角色對應的表權限

USER_ROLE_PRIVS

用戶的角色分配表

USER_TAB_PRIVS_MADE

用戶對象上賦權者與被賦者的歷史賦權情況

USER_TAB_PRIVS_RECD

用戶對象上擁有者與被賦者的歷史賦權情況

USER_COL_PRIVS_MADE

用戶對象列上賦權者與被賦者的歷史賦權情況

USER_COL_PRIVS_RECD

用戶對象列上擁有者與被賦者的歷史賦權情況

USER_SYS_PRIVS

用戶的系統權限


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章