ORACLE許可權

國境之南_ywx發表於2015-12-08

                                                ORACLE許可權


作者:Vashon

時間:20140308

釋出時間:20151208


許可權分為兩類:系統許可權、物件許可權
系統許可權:進行資料庫資源操作的許可權,例如:建立資料表、索引等許可權;
物件許可權:維護資料庫中物件的能力,即:由一個使用者操作另外一個使用者的物件。
許可權的兩個核心操作命令:grant(授權)、revoke(回收許可權);


系統許可權(針對的是全域性使用者)------------


範例:為剛剛建立的c##vashon使用者授予建立session的許可權
grant create session to c##vashon;
此時c##vashon使用者可以登入了,但不能建立表、建立檢視等,無法操作資源,還得繼續授權,如:
grant create table,create sequence,create view to c##vashon with admin potion;
使用"with admin option"之後,那麼就表示c##vashon使用者的許可權可以繼續往下授予。




所有許可權的分配資訊可以利用dba_sys_privs資料字典檢視:
select * from dba_sys_privs where grantee in('C##VASHON');//使用者要大寫。


範例:撤銷c##vashon的部分許可權
revoke create table,create view from c##vashon;
撤銷當前使用者的許可權,對於當前使用者往下授予的許可權沒有影響。


物件許可權(針對的是一個使用者下的所有相關物件的操作)----------------
範例:為c##vashon使用者授予scott使用者dept表的增加及查詢許可權
grant select,insert on scott.dept to c##vashon;
則c##vashon使用者就可以執行scott的dept表的增加、查詢操作了。


範例:將scott.dept資料庫表更新部門名稱的許可權授予c##vashon使用者
grant update(dname) on scott.dept to c##vashon;


範例:檢視當前使用者所擁有的許可權
select * from user_tab_privs_recd;



相關文章