IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類(lèi)|軟件專(zhuān)題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁(yè)數(shù)據(jù)庫(kù)Oracle → 五種Oracle用戶(hù)的授權(quán)與管理

五種Oracle用戶(hù)的授權(quán)與管理

時(shí)間:2015-06-28 00:00:00 來(lái)源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(1)

  Oracle數(shù)據(jù)庫(kù)的權(quán)限系統(tǒng)分為系統(tǒng)權(quán)限與對(duì)象權(quán)限。系統(tǒng)權(quán)限( Database System Privilege )可以讓用戶(hù)執(zhí)行特定的命令集。例如,CREATE TABLE權(quán)限允許用戶(hù)創(chuàng)建表,GRANT ANY PRIVILEGE 權(quán)限允許用戶(hù)授予任何系統(tǒng)權(quán)限。對(duì)象權(quán)限( Database Object Privilege )可以讓用戶(hù)能夠?qū)Ω鱾€(gè)對(duì)象進(jìn)行某些操作。例如DELETE權(quán)限允許用戶(hù)刪除表或視圖的行,SELECT權(quán)限允許用戶(hù)通過(guò)select從表、視圖、序列(sequences)或快照 (snapshots)中查詢(xún)信息。

  每個(gè)Oracle用戶(hù)都有一個(gè)名字和口令,并擁有一些由其創(chuàng)建的表、視圖和其他資源。Oracle角色(role)就是一組權(quán)限(privilege)(或者是每個(gè)用戶(hù)根據(jù)其狀態(tài)和條件所需的訪問(wèn)類(lèi)型)。用戶(hù)可以給角色授予或賦予指定的權(quán)限,然后將角色賦給相應(yīng)的用戶(hù)。一個(gè)用戶(hù)也可以直接給其他用戶(hù)授權(quán)。

  一、創(chuàng)建用戶(hù)

  Oracle內(nèi)部有兩個(gè)建好的用戶(hù):SYSTEM和SYS。用戶(hù)可直接登錄到SYSTEM用戶(hù)以創(chuàng)建其他用戶(hù),因?yàn)镾YSTEM具有創(chuàng)建別 的用戶(hù)的 權(quán)限。 在安裝Oracle時(shí),用戶(hù)或系統(tǒng)管理員首先可以為自己建立一個(gè)用戶(hù)。例 如 :

  create user user01 identified by u01;

  該命令還可以用來(lái)設(shè)置其他權(quán)限,詳細(xì)情況參見(jiàn)自學(xué)資料。要改變一個(gè)口令,可以使用alter user命令:

  alter user user01 identified by usr01;

  現(xiàn)在user01的口令已由"u01"改為"usr01"。

  除了alter user命令以外,用戶(hù)還可以使用password命令。如果使用password命令,用戶(hù)輸入的新口令將不在屏幕上顯示。有dba特權(quán)的用戶(hù)可以通過(guò)password命令改變?nèi)魏纹渌脩?hù)的口令;其他用戶(hù)只能改變自己的口令。

  當(dāng)用戶(hù)輸入password命令時(shí),系統(tǒng)將提示用戶(hù)輸入舊口令和新口令,如下所示:

  password

  Changing password for user01

  Old password:

  New password:

  Retype new password:

  當(dāng)成功地修改了口令時(shí),用戶(hù)會(huì)得到如下的反饋:

  Password changed

  二 、刪除用戶(hù)

  刪除用戶(hù),可以使用drop user命令,如下所示:

  drop user user01;

  如果用戶(hù)擁有對(duì)象,則不能直接刪除,否則將返回一個(gè)錯(cuò)誤值。指定關(guān)鍵字CASCADE,可刪除用戶(hù)所有的對(duì)象,然后再刪除用戶(hù)。下面的例子用來(lái)刪除用戶(hù)與其對(duì)象:

  drop user user01 CASCADE;

  三 、3種標(biāo)準(zhǔn)角色

  Qracle為了兼容以前的版本,提供了三種標(biāo)準(zhǔn)的角色(role):CONNECT、RESOURCE和DBA。

  1. CONNECT Role(連接角色)

  臨時(shí)用戶(hù),特別是那些不需要建表的用戶(hù),通常只賦予他們CONNECTrole。CONNECT是使用Oracle的簡(jiǎn)單權(quán)限,這種權(quán)限只有在對(duì)其他用戶(hù)的表有訪問(wèn)權(quán)時(shí),包括select、insert、update和delete等,才會(huì)變得有意義。擁有 CONNECT role的用戶(hù)還能夠創(chuàng)建表、視圖、序列(sequence)、簇(cluster)、同義詞(synonym )、會(huì)話(huà)(session)和與其他數(shù)據(jù)庫(kù)的鏈(link)。

  2. RESOURCE Role(資源角色)

  更可靠和正式的數(shù)據(jù)庫(kù)用戶(hù)可以授予RESOURCE role。RESOURCE提供給用戶(hù)另外的權(quán)限以創(chuàng)建他們自己的表、序列、過(guò)程(procedure)、觸發(fā)器(trigger)、索引(index)和簇(cluster)。

  3. DBA Role(數(shù)據(jù)庫(kù)管理員角色)

  DBA role擁有所有的系統(tǒng)權(quán)限----包括無(wú)限制的空間限額和給其他用戶(hù)授予各種權(quán)限的能力。SYSTEM由DBA用戶(hù)擁有。下面介紹一些DBA經(jīng)常使用的典型權(quán)限。

 ?。?)grant(授權(quán))命令

  下面對(duì)剛才創(chuàng)建的用戶(hù)user01授權(quán),命令如下:

  grant connect, resource to user01;

  (2)revoke(撤消)權(quán)限

  已授予的權(quán)限可以撤消。例如撤消(1)中的授權(quán),命令如下:

  revoke connect, resource from user01;

  一個(gè)具有DBA角色的用戶(hù)可以撤消任何別的用戶(hù)甚至別的DBA的CONNECT、RESOURCE 和DBA的其他權(quán)限。當(dāng)然,這樣是很危險(xiǎn)的,因此,除非真正需要,DBA權(quán)限不應(yīng)隨便授予那些不是很重要的一般用戶(hù)。

  撤消一個(gè)用戶(hù)的所有權(quán)限,并不意味著從Oracle中刪除了這個(gè)用戶(hù), 也不會(huì)破壞用戶(hù)創(chuàng)建的任何表;只是簡(jiǎn)單禁止其對(duì)這些表的訪問(wèn)。其他要訪問(wèn)這些表的用戶(hù)可以象以前那樣地訪問(wèn)這些表。

  四、創(chuàng)建角色

  除了前面講到的三種系統(tǒng)角色----CONNECT、RESOURCE和DBA,用戶(hù)還可以在Oracle創(chuàng)建自己的role。用戶(hù)創(chuàng)建的role可以由表或系統(tǒng)權(quán)限或兩者的組合構(gòu)成。為了創(chuàng)建role,用戶(hù)必須具有CREATE ROLE系統(tǒng)權(quán)限。下面給出一個(gè)create role命令的實(shí)例:

  create role STUDENT;

  這條命令創(chuàng)建了一個(gè)名為STUDENT的role。

  一旦創(chuàng)建了一個(gè)role,用戶(hù)就可以給他授權(quán)。給role授權(quán)的grant命令的語(yǔ)法與對(duì)對(duì)用戶(hù)的語(yǔ)法相同。在給role授權(quán)時(shí),在grant命令的to子句中要使用role的名稱(chēng),如下所示:

  grant select on CLASS to STUDENT;

  現(xiàn)在,擁有STUDENT 角色的所有用戶(hù)都具有對(duì)CLASS 表的select權(quán)限。

  五、刪除角色

  要?jiǎng)h除角色,可以使用drop role命令,如下所示:

  drop role STUDENT;

  指定的role連同與之相關(guān)的權(quán)限將從數(shù)據(jù)庫(kù)中全部刪除。

關(guān)鍵詞標(biāo)簽:Oracle用戶(hù)授權(quán)

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門(mén)文章 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 oracle中使用SQL語(yǔ)句修改字段類(lèi)型-oracle修改SQL語(yǔ)句案例 oracle中使用SQL語(yǔ)句修改字段類(lèi)型-oracle修改SQL語(yǔ)句案例 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索 為UNIX服務(wù)器設(shè)置Oracle全文檢索

相關(guān)下載

    人氣排行 oracle中使用SQL語(yǔ)句修改字段類(lèi)型-oracle修改SQL語(yǔ)句案例 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 ORACLE SQL 判斷字符串是否為數(shù)字的語(yǔ)句 ORACLE和SQL語(yǔ)法區(qū)別歸納(1) oracle grant 授權(quán)語(yǔ)句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法