授權(quán)分為:授予者(grantor)被授予者(grantee)
成都創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站制作、做網(wǎng)站、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的關(guān)嶺網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
授予和撤銷權(quán)限
權(quán)限分為:系統(tǒng)權(quán)限和對(duì)象權(quán)限
一、系統(tǒng)權(quán)限
系統(tǒng)權(quán)限約有200種,大多數(shù)都影響數(shù)據(jù)字典的操作。常用的權(quán)限如下:
CREATE SESSION (創(chuàng)建會(huì)話) --允許用戶連接
RESTRICTED SESSION(受限制的會(huì)話) --如果使用STARTUP RESTRICT啟動(dòng)數(shù)據(jù)庫(kù),或者使用ALTER SYSTEM ENABLE RESTRICTED SESSION進(jìn)行調(diào)整,則僅擁有此權(quán)限的用戶可以連接。
ALTER DATABASE (更改數(shù)據(jù)庫(kù))--允許訪問多個(gè)修改物理結(jié)構(gòu)所需的命令
ALTER SYSTEM(更改系統(tǒng))--允許控制實(shí)例參數(shù)和內(nèi)存結(jié)構(gòu)
CREATE TABLESPACE (創(chuàng)建表空間)--ALTER TABLESPACE 和 DROP TABLESPACE權(quán)限允許用戶管理表空間
CREATE TABLE(創(chuàng)建表)--需要更改和刪除表,在其上允許SELECT和DML命令,以及在其上創(chuàng)建、更改或刪除索引。
GRANT ANY OBJECT PRIVILEGE (授予任何對(duì)象權(quán)限)--允許被授權(quán)人將其本身不擁有的對(duì)象的對(duì)象權(quán)限授予他人,但不能授予自己。
CREATE ANY TABLE (創(chuàng)建任何表)--被授權(quán)人可以創(chuàng)建屬于其他用戶的表。
DROP ANY TABLE (刪除任何表 )
INSERT ANY TABLE, UPDATE ANY TABLE, DELETE ANY TABLE (插入任何表,更新任何表,刪除任何表)
SELECT ANY TABLE(選擇任何表) 被授權(quán)人可以對(duì)數(shù)據(jù)庫(kù)中的任何表執(zhí)行select操作。
1、授予權(quán)限的語(yǔ)法如下:
GRANT privilege [,privilege …] TO username;
創(chuàng)建用戶賬戶以后,下面的命令將授予通常分配給用戶(參與應(yīng)用程序開發(fā)的用戶)的系統(tǒng)權(quán)限;
Grant create session ,alter session, create table , create view, create synonym , create cluster,create database link , create sequence , create trigger, create type , create procedure, create operator TO username;
2、此語(yǔ)法的一個(gè)變體允許被授權(quán)人將權(quán)限傳遞給第三方,例如:
SQL>connect system/oracle;
SQL>grant create table to scott with admin option;
SQL>connect scott/tiger
SQL> grant create table to jonce;
注:如果用戶被授予帶有ADMIN OPTION的權(quán)限,那么即使對(duì)其做了撤銷,他授予了權(quán)限的任何用戶將保留權(quán)限。
系統(tǒng)權(quán)限的撤銷不會(huì)級(jí)聯(lián)(這與撤銷對(duì)象權(quán)限不同)。
二、對(duì)象權(quán)限
對(duì)象權(quán)限允許針對(duì)表相關(guān)對(duì)象執(zhí)行SELECT,INSERT,UPDATE和DELETE命令,也允許執(zhí)行PL/SQL對(duì)象。
注:ANY權(quán)限針對(duì)數(shù)據(jù)庫(kù)中的每個(gè)用戶賬戶中的每個(gè)對(duì)象授權(quán),是系統(tǒng)權(quán)限,而不是對(duì)象權(quán)限。
1、語(yǔ)法如下:
GRANT privilege ON [schema.]object TO username [WITH GRANT OPION];
EG. grant select on store.customers to scott;
變化包括ALL(將所有相關(guān)權(quán)限應(yīng)用于對(duì)象類型),以及命名視圖或表的特定列;
SQL>grant select on store.orders to scott;
SQL> grant update (order_status) on store.orders to scott;
SQL> grant all on store.regions to scott;
使用WITH GRANT OPTION,可使用戶將其對(duì)象權(quán)限傳給第三方。
三、撤銷權(quán)限
撤銷對(duì)象權(quán)限語(yǔ)法:
REVOKE privilege[,privilege…] on tablename from username;
撤銷系統(tǒng)權(quán)限的語(yǔ)法:
REVOKE privilege[,privilege…] from username;