Oracle資料庫中的特權和角色概念解析

2021-04-20 15:36:41 字數 1447 閱讀 3320

(1)特權:特權是執行一種特殊型別的sql語句或訪問另一使用者的物件的權力。有兩類特權:系統特權和物件特權。

系統特權:是執行一處特殊動作或者在物件型別上執行一種特殊動作的權利。oracle有60多種不同系統特權,每一種系統允許使用者執行一種特殊的資料庫操作或一類資料庫操作.

系統特權可授權給使用者或角色,一般,系統特權全管理人員和應用開發人員,終端使用者不需要這些相關功能.授權給一使用者的系統特權並具有該 系統特權授權給其他使用者或角色.反之,可從那些被授權的使用者或角色**系統特權.

物件特權:在指定的表、檢視、序列、過程、函式或包上執行特殊動作的權利。對於不同型別的物件,有不同型別的物件特權。對於有些模式物件,如聚集、索引、觸發器、資料庫鏈沒有相關的物件特權,它們由系統特權控制。

對於包含在某使用者名稱的模式中的物件,該使用者對這些物件自動地具有全部物件特權,即模式的持有者對模式中的物件具有全部物件特權。這些物件的持有者可將這些物件上的任何物件特權可授權給其他使用者。如果被授者包含有grant option 授權,那麼該被授者也可將其權利再授權給其他使用者。

◆減少特權管理,不要顯式地將同一特權組授權給幾個使用者,只需將這特權組授給角色,然後將角色授權給每一使用者。

◆動態特權管理,如果一組特權需要改變,只需修改角色的特權,所有授給該角色的全部使用者的安全域將自動地反映對角色所作的修改。

◆特權的選擇可用性,授權給使用者的角色可選擇地使其使能(可用)或使不能(不可用)。

◆應用可知性,當一使用者經一使用者名稱執行應用時,該資料庫應用可查詢字典,將自動地選擇使角色使能或不能。

◆專門的應用安全性,角色使用可由口令保護,應用可提供正確的口令使用權角色使能,達到專用的應用安全性。因使用者不知其口令,不能使角色使能。

一般,建立角色服務於兩個目的:為資料庫應用管理特權和為使用者組管理特權。相應的角色稱為應用角色和使用者角色。

應用角色是授予的執行一資料庫應用所需的全部特權。乙個應用角色可授給其它角色或指定使用者。乙個應用可有幾種不同角色,具有不同特權組的每乙個角色在使用應用時可進行不同的資料訪問。

使用者角色是為具有公開特權需求的一組資料庫使用者而建立的。使用者特權管理是受應用角色或特權授權給使用者角色所控制,然後將使用者角色授權給相應的使用者。

資料庫角色包含下列功能:

◆乙個角色可授予系統特權或物件特權。

◆乙個角色可授權給其它角色,但不能迴圈授權。

◆任何角色可授權給任何資料庫使用者。

◆授權給一使用者的每一角色可以是使能的或者使不能的。乙個使用者的安全域僅包含當前對該使用者使能的全部角色的特權。

◆乙個間接授權角色(授權給另一角色的角色)對一使用者可顯式地使其能或使不能。

在乙個資料庫中,每乙個角色名必須唯一。角色名與使用者不同,角色不包含在任何模式中,所以建立一角色的使用者被刪除時不影響該角色。

oracle為了提供與以前版本的相容性,預定義下列角色:connent、resource、dba、exp-full-database和imp-full-database。

ORACLE資料庫中許可權和角色

oracle資料庫是一種大型關係型的資料庫,我們知道當使用乙個資料庫時,僅僅能夠控制哪些人可以訪問資料庫,哪些人不能訪問資料庫是無法滿足資料庫訪問控制的。dba需要通過一種機制來限制使用者可以做什麼,不能做什麼,這在oracle中可以通過為使用者設定許可權來實現。許可權就是使用者可以執行某種操作的權...

oracle資料庫如何建立使用者和角色,並給其賦權?

一 建立使用者並賦予許可權 1 建立使用者 create user wangxiangyu identified by wangxiangyu 2 賦權 grant dba to wangxiangyu grant create session to wangxiangyu 會話許可權 沒有該許可權...

資料庫 Oracle中建立資料庫

create database lihua 網上的說法是 oracle中的例項只對應乙個資料庫,出現此種情況說明oracle資料庫處於mount 裝載 或open狀態,需要使用startup nomount語句進行狀態更改,或者是直接使用dbca的圖形介面來建立 注 經測試,startup nomo...