Oracle Grant 與 Revoke的用法

 1、權限是用戶對一項功能的執行權力。在Oracle 中,根據系統管理方式不一樣,將權限分爲系統權限 與實體權限 兩類。數據庫

系統權限 是指是否被受權用戶能夠鏈接到數據庫上,在數據庫中能夠進行哪些系統操做。服務器

實體權限 是指用戶對具體的模式實體 (schema)所擁有的權限。這樣講能夠有些模糊。session

舉個例子來講:select any table是系統權限,它表示能夠查看任何表。而select on table1是實體權限,表示對錶table1的查詢權限。函數

2、見下下面的表spa


3、系統權限受權命令的使用
語法:
GRANT 權限名 TO 用戶|角色|PUBLIC
其中,PUBLIC表示將權限賦給數據庫中全部的用戶
例:賦給用戶USER1權限CREATE TABLE的受權命令以下:
SQL>GRANT CREATE TABLE TO USER1;
受權語句還能夠增長WITH ADMIN OPTION選項,表示被受權的用戶能夠將它所得權限賦給其它用戶,如:
SQL>GRANT CREATE TABLE,CREATE VIEW TO USER1,USER2 WITH ADMIN OPTION;
若要了解各用戶所擁有的系統權限,能夠查詢數據字典USER_SYS_PRIVS、ROLE_SYS_PRIVS。
若要回收權限,則使用REVOKE命令,如:
SQL>REVOKE CREATE TABLE FROM USER1;rest

4、實體權限管理
  實體權限是指某一用戶對某一特定schema對象的操做權限。
1.實體權限分類
  不一樣的實體類型有不一樣的實體權限,以下表對象


2.實體權限的授命令
語法以下:
GRANT 實體權限名|ALL TO 用戶|角色|PUBLIC
其中,ALL表示實體的全部實體權限。
如:
SQL>GRANT SELECT ON BOOKS_QUTHORS TO USER1;
如下語句用來查詢表的實體權限的受權信息:
SQL>SELECT * FROM USER_TAB_PRIVES
若要回收實體權限,使用REVOKE,其語法以下:
REVOKE 實體權限名|ALL ON 實體名 FROM 用戶名|角色名|PUBLIC。blog

      alter any cluster 修改任意簇的權限
  alter any index 修改任意索引的權限
  alter any role 修改任意角色的權限 alter any cluster
  alter any sequence 修改任意序列的權限
  alter any snapshot 修改任意快照的權限
  alter any table 修改任意表的權限
  alter any trigger 修改任意觸發器的權限
  alter cluster 修改擁有簇的權限
  alter database 修改數據庫的權限
  alter procedure 修改擁有的存儲過程權限
  alter profile 修改資源限制簡表的權限
  alter resource cost 設置佳話資源開銷的權限
  alter rollback segment 修改回滾段的權限
  alter sequence 修改擁有的序列權限
  alter session 修改數據庫會話的權限
  alter sytem 修改數據庫服務器設置的權限
  alter table 修改擁有的表權限
  alter tablespace 修改表空間的權限
  alter user 修改用戶的權限
  analyze 使用analyze命令分析數據庫中任意的表、索引和簇
  audit any 爲任意的數據庫對象設置審計選項
  audit system 容許系統操做審計
  backup any table 備份任意表的權限
  become user 切換用戶狀態的權限
  commit any table 提交表的權限
  create any cluster 爲任意用戶建立簇的權限
  create any index 爲任意用戶建立索引的權限
  create any procedure 爲任意用戶建立存儲過程的權限
  create any sequence 爲任意用戶建立序列的權限
  create any snapshot 爲任意用戶建立快照的權限
  create any synonym 爲任意用戶建立同義名的權限
  create any table 爲任意用戶建立表的權限
  create any trigger 爲任意用戶建立觸發器的權限
  create any view 爲任意用戶建立視圖的權限
  create cluster 爲用戶建立簇的權限
  create database link 爲用戶建立的權限
  create procedure 爲用戶建立存儲過程的權限
  create profile 建立資源限制簡表的權限
  create public database link 建立公共數據庫鏈路的權限
  create public synonym 建立公共同義名的權限
  create role 建立角色的權限
  create rollback segment 建立回滾段的權限
  create session 建立會話的權限
  create sequence 爲用戶建立序列的權限
  create snapshot 爲用戶建立快照的權限
  create synonym 爲用戶建立同義名的權限
  create table 爲用戶建立表的權限
  create tablespace 建立表空間的權限
  create user 建立用戶的權限
  create view 爲用戶建立視圖的權限
  delete any table 刪除任意表行的權限
  delete any view 刪除任意視圖行的權限
  delete snapshot 刪除快照中行的權限
  delete table 爲用戶刪除錶行的權限
  delete view 爲用戶刪除視圖行的權限
  drop any cluster 刪除任意簇的權限
  drop any index 刪除任意索引的權限
  drop any procedure 刪除任意存儲過程的權限
  drop any role 刪除任意角色的權限
  drop any sequence 刪除任意序列的權限
  drop any snapshot 刪除任意快照的權限
  drop any synonym 刪除任意同義名的權限
  drop any table 刪除任意表的權限
  drop any trigger 刪除任意觸發器的權限
  drop any view 刪除任意視圖的權限
  drop profile 刪除資源限制簡表的權限
  drop public cluster 刪除公共簇的權限
  drop public database link 刪除公共數據鏈路的權限
  drop public synonym 刪除公共同義名的權限
  drop rollback segment 刪除回滾段的權限
  drop tablespace 刪除表空間的權限
  drop user 刪除用戶的權限
  execute any procedure 執行任意存儲過程的權限
  execute function 執行存儲函數的權限
  execute package 執行存儲包的權限
  execute procedure 執行用戶存儲過程的權限
  force any transaction 管理未提交的任意事務的輸出權限
  force transaction 管理未提交的用戶事務的輸出權限
  grant any privilege 授予任意系統特權的權限
  grant any role 授予任意角色的權限
  index table 給表加索引的權限
  insert any table 向任意表中插入行的權限
  insert snapshot 向快照中插入行的權限
  insert table 向用戶表中插入行的權限
  insert view 向用戶視圖中插行的權限
  lock any table 給任意表加鎖的權限
  manager tablespace 管理(備份可用性)表空間的權限
  references table 參考表的權限
  restricted session 建立有限制的數據庫會話的權限
  select any sequence 使用任意序列的權限
  select any table 使用任意表的權限
  select snapshot 使用快照的權限
  select sequence 使用用戶序列的權限
  select table 使用用戶表的權限
  select view 使用視圖的權限
  unlimited tablespace 對錶空間大小不加限制的權限
  update any table 修改任意表中行的權限
  update snapshot 修改快照中行的權限
  update table 修改用戶表中的行的權限
  update view 修改視圖中行的權限索引

相關文章
相關標籤/搜索