首頁 >資料庫 >Oracle >oracle怎麼取消權限

oracle怎麼取消權限

WBOY
WBOY原創
2022-02-28 10:11:378528瀏覽

方法:1.利用「revoke system_privilege from user|role」指令取消系統權限;2、利用「revoke obj_privilege|allon object from  user|role」指令取消物件權限。

oracle怎麼取消權限

本教學操作環境:Windows10系統、Oracle 11g版、Dell G3電腦。

oracle怎麼取消權限

Oracle撤銷權限

Oracle撤銷權限的概念就是對使用者或角色的權限的回收,也就是對用戶刪除某個系統權限或刪除某個物件的操作權限。

Oracle撤銷系統權限

Oracle撤銷系統權限只有具有DBA權限的使用者才能撤銷(revoke)操作。撤銷系統權限的語法如下:

revoke system_privilege from user|role;

語法解析:

1、system_privilege:指的是撤銷的系統權限的名稱,撤銷系統權限時,必須是該使用者俱有了該系統權限,假如不存在系統權限是不能進行撤銷的。

2、user|role:指的是撤銷權限的物件是使用者還是角色。

例1、利用revoke指令撤銷使用者teacher的create session權限,程式碼如下:

revoke create session from teacher;

然後透過資料字典dba_sys_privs可以查詢一下TEACHER的系統權限,發現create session已經不存在了。

Oracle撤銷物件權限

Oracle撤銷物件權限也是利用revoke指令進行的,語法結構如下:

revoke obj_privilege|all
on object
from  user|role;

語法解析:

1、obj_privilege|all:指的是對應的資料庫物件的操作權限,all表示撤銷所有的操作權限。

範例2、利用revoke指令撤銷使用者teacher對學生資訊表(stuinfo)的delete(刪除)的操作權限,程式碼如下:

revoke delete  on student.stuinfo from  teacher ;

然後,透過資料字典dba_tab_privs查詢一下stuinfo的操作權限,發現已經刪除,只剩下查詢權限。

注意:在進行撤銷權限時,系統權限的撤銷和物件權限的撤銷是不一樣的,透過上一章Oracle權限授權管理知道,系統權限的授權不是級聯的,物件權限的授權是級聯的。在撤銷權限時也是一樣的,在撤銷物件權限時,那麼該使用者授予給其它使用者的物件權限也要跟著收回。而撤銷系統權限就不會收回其它使用者的權限。

推薦教學:《Oracle影片教學

以上是oracle怎麼取消權限的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn