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

您當前所在位置: 首頁數(shù)據(jù)庫Oracle → Oracle對user的訪問控制

Oracle對user的訪問控制

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

  這個是在introduction to Oracle 9i SQL student guide第二卷中看到的,寫完才發(fā)現(xiàn)之前有過相關(guān)、甚至更全面的介紹了。但還是發(fā)布吧。

  1、控制user的訪問

  主要有以下幾方面:

  *? 控制database的訪問

  *? 控制database中特定的對象的訪問

  *? 授予一定的訪問Oracle 數(shù)據(jù)字典的權(quán)限

  *? 為database對象創(chuàng)建synonym

  database的安全性可以被定義為兩類:系統(tǒng)的安全和data的安全。前者包括在system 級別的database的訪問與使用,如username和password、給user分配的磁盤空間以及user可執(zhí)行的系統(tǒng)操作。后者包括對database對象的訪問及操作的安全控制。

  1)系統(tǒng)權(quán)限

  主要有:CREATE USER, DROP USER, DROP ANY TABLE, BACKUP ANY TABLE, SELECT ANY TABLE, CREATE ANY TABLE

  2)創(chuàng)建users

  CREATE USER user IDENTIFIED BY password;

  3)授予權(quán)限

  GRANT privilege [, privilege ...] TO user [, user| role, PUBLIC ...];

  對于應(yīng)用開發(fā)者,一般至少會需要下面的權(quán)限:

  CREATE SESSION,? CREATE TABLE,? CREATE SEQUENCE, CREATE VIEW,? CREATE PROCEDURE

  4)修改user的密碼

  ALTER USER user IDENTIFIED BY nowpassword;

  5)對象權(quán)限

  GRANT object_priv|ALL [(columns)] ON object TO {user | role | PUBLIC} [WITH GRANT OPTION];

  其中,ALL表示所有對象權(quán)限

  2、role

  1)role是一組相關(guān)權(quán)限的集合,可以被一起授予user,從而簡化授權(quán)和收回權(quán)限的操作。一個user可以被授予多個roles,一個role也可以被授予給多個user。

  CREATE ROLE role;

  隨后,可以用grant語句給role授權(quán)。PUBLIC表示將對象權(quán)限授予所有users。

  2)給role授予相應(yīng)權(quán)限的操作和上面講的給user授權(quán)是一致的。

  3、獲得權(quán)限上授予情況信息的視圖

  4、對象權(quán)限的收回

  REVOKE {privilege [, privilege ... ] | ALL} ON object FROM {user [, user ... ] | role | PUBLIC} [CASCADE CONSTRAINTS];

  其中,CASCADE CONSTRAINTS子句會收回所有通過REFERENCES方法創(chuàng)建的參照完整性約束的權(quán)限。在revoke之后,所有由with grant option進行授權(quán)的user的相應(yīng)權(quán)限也會被收回。

  5、database link(可以使本地user訪問遠程database)

  database link是一個指針,定義了一個Oracle database server與另一個database server進行交互的方法。link 指針實際是一個數(shù)據(jù)字典表中的實體。為了訪問link,必須連接包含該數(shù)據(jù)字典實體的本地database。

  database link的最大的優(yōu)點是它允許users訪問其他user在遠程database的objects。

  具體創(chuàng)建實例:

  CREATE PUBLIC DATABASE LINK hq.acme.com USING ’sales’;

  其中,USING子句指明了遠程database的service名稱。database link創(chuàng)建之后,就可發(fā)起如下的訪問:

  SELECT * FROM [email protected];

關(guān)鍵詞標簽:Oracle

相關(guān)閱讀

文章評論
發(fā)表評論

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

相關(guān)下載

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