oracle的用戶權限:1、系統權限,允許用戶執行特定的數據庫動作的權限,包括了創建表、索引、連接實例等等;2、對象權限,允許用戶操作特定對象的權限,包括了讀取視圖、執行存儲過程等等。
本教程操作環境:Windows10系統、Oracle 11g版、Dell G3電腦。
oracle的用戶權限有哪些
系統權限: 允許用戶執行特定的數據庫動作,如創建表、創建索引、連接實例等(對用戶而言)
對象權限: 允許用戶操縱一些特定的對象,如讀取視圖,可更新某些列、執行存儲過程等(是針對表或視圖而言的)
1.系統權限
超過一百多種有效的權限(select * FROM SYSTEM_PRIVILEGE_MAP查)
數據庫管理員具有高級權限以完成管理任務,例如:
-
–創建新用戶
-
–刪除用戶
-
–刪除表
-
–備份表
系統權限分類:
-
dba: 擁有全部特權,是系統最高權限,只有DBA才可以創建數據庫結構。
-
Resource:擁有Resource權限的用戶只可以創建實體,不可以創建數據庫結構。
-
CONNECT:擁有Connect權限的用戶只可以登錄Oracle,不可以創建實體,不可以創建數據庫結構。
-
對于普通用戶:授予connect, resource權限。
-
對于DBA管理用戶:授予connect,resource, dba權限。
a.常用的系統權限:
-
CREATE Session 創建會話
-
CREATE SEQUENCE 創建序列
-
CREATE SYNONYM 創建同名對象
-
CREATE table 在用戶模式中創建表
-
CREATE ANY TABLE 在任何模式中創建表
-
DROP TABLE 在用戶模式中刪除表
-
DROP ANY TABLE 在任何模式中刪除表
-
CREATE PROCEDURE 創建存儲過程
-
EXECUTE ANY PROCEDURE 執行任何模式的存儲過程
-
CREATE USER 創建用戶
-
DROP USER 刪除用戶
-
CREATE VIEW 創建視圖
2.對象權限
不同的對象具有不同的對象權限
對象的擁有者擁有所有權限
對象的擁有者可以向外分配權限
ORACLE一共有種對象權限
對象權限 表 視圖 序列 過程
-
修改(alter)?
-
刪除(delete)?
-
執行(execute)?
-
索引(index)?
-
插入(insert)?
-
關聯(references)?
-
選擇(select)?
-
更新(update)?
另外,connect和resource的權限如下所示
CONNECT角色:僅具有創建SESSION的權限
RESOURCE角色:僅具有創建CLUSTER,INDEXTYPE,operator,PROCEDEURE,SEQUENCE,TABLE,TRIGGER,TYPE的權限。
同時,當把ORACLE resource角色授予一個user的時候,不但會授予ORACLE resource角色本身的權限,而且還有unlimited tablespace權限,但是,當把resource授予一個role時,就不會授予unlimited tablespace權限。
確實沒有創建視圖的權限,由此看來如果需要創建視圖權限,只能單獨授權:
?GRANT CREATE VIEW TO 用戶;
推薦教程:《Oracle視頻教程》