日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Oracle入门(九A)之用户的权限或角色

發布時間:2023/12/3 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Oracle入门(九A)之用户的权限或角色 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載自?查看Oracle用戶的權限或角色

前幾天被問到一些關于權限和角色的問題,今天抽時間總結一下如何查看Oracle用戶的權限或角色,在之前的博文中,寫過 SYS,SYSTEM,DBA,SYSDBA,SYSOPER的區別與聯系 以及? Oracle中定義者權限和調用者權限案例分析 這兩篇博文,讀者可以參考閱讀!Oracle的東西感覺很雜,抽空閑的時間多總結也是對知識的一個梳理以及對自己的一個提高,文中若有錯誤或者不當之處,請大家指出,謝謝!


一、查看用戶

1.查看所有用戶:
select * from dba_users;
select * from all_users;
select * from user_users;? ? //查看當前用戶


二、查看角色

1.當前用戶被激活的全部角色
? select * from session_roles;


2.當前當前用戶被授予的角色
? select * from user_role_privs;


3.全部用戶被授予的角色
? select * from dba_role_privs;


4、查看某個用戶所擁有的角色
select * from dba_role_privs where grantee='用戶名';


5、查看某個角色所擁有的權限
select * from dba_sys_privs where grantee='CONNECT';


6.查看所有角色
? select * from dba_roles;



三、查看權限

1.基本權限查詢:
select * from session_privs; --當前用戶所擁有的全部權限
select * from user_sys_privs;--當前用戶的系統權限
select * from user_tab_privs;--當前用戶的對象權限
select * from dba_sys_privs ;--查詢某個用戶所擁有的系統權限
select * from role_sys_privs;--查看角色(只能查看登陸用戶擁有的角色)所包含的權限


2. 查看用戶的系統權限(直接賦值給用戶或角色的系統權限)
select * from dba_sys_privs;
select * from user_sys_privs;


2.查看用戶的對象權限:
?select * from dba_tab_privs;
?select * from all_tab_privs;
?select * from user_tab_privs;


3.查看哪些用戶有sysdba或sysoper系統權限(查詢時需要相應權限)
? select * from v$pwfile_users;?


擴展
1、以下語句可以查看Oracle提供的系統權限
select name from sys.system_privilege_map

2、查看一個用戶的所有系統權限(包含角色的系統權限)
select privilege from dba_sys_privs where grantee='SCOTT'??
union??
select privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee='SCOTT' );?

3、 查詢當前用戶可以訪問的所有數據字典視圖。?
select * from dict where comments like '%grant%';? ?

4、顯示當前數據庫的全稱
select * from global_name;? ?

問題 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究竟有多少種角色?? ?
select * from dba_roles;? ?

問題 3:如何查看某個用戶,具有什么樣的角色?? ?
select * from dba_role_privs where grantee='用戶名'??


問題4:查看哪些用戶具有DBA的角色

select grantee from dba_role_privs where granted_role='DBA';


創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的Oracle入门(九A)之用户的权限或角色的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。