標籤:使用 strong 資料 io re c div 管理
Oracle的許可權有三種類型:
Object privileges 對象許可權
Role privileges 角色許可權
System privileges 系統許可權
(一)、對象許可權 一般來說的,對象許可權,是針對一個使用者對某些表,視圖,函數,預存程序的存取權限
grant select, insert, update, delete on test_table to test_user; 賦予使用者test_user對錶test_table增刪改查許可權 grant execute on F_zsd_test to test_user;
grant execute on PRO_zsd_test to test_user; 賦予使用者test_user對函數和預存程序的執行許可權 grant select, insert, update, delete on VIEW_P_test to test_user; 對視圖VIEW_P_test增刪改查許可權
(二)、角色許可權,最基礎的是connect與resource的許可權
(1). CONNECT角色:
--是授予終端使用者的典型權利,最基本的
ALTER SESSION --修改會話
CREATE CLUSTER --建立聚簇
CREATE DATABASE LINK --建立資料庫連結
CREATE SEQUENCE --建立序列
CREATE SESSION --建立會話
CREATE SYNONYM --建立同義字
CREATE VIEW --建立視圖 (2). RESOURCE 角色: --是授予開發人員的
CREATE CLUSTER --建立聚簇
CREATE PROCEDURE --建立過程
CREATE SEQUENCE --建立序列
CREATE TABLE --建表
CREATE TRIGGER --建立觸發器
CREATE TYPE --建立類型 從dba_sys_privs裡可以查到(注意這裡必須以DBA角色登入):
select * from dba_sys_privs t where t.grantee=‘RESOURCE‘ order by priilege; 可以查看resource角色的許可權
select * from dba_sys_privs t where t.grantee=‘CONNECT‘ order by priilege; 可以查看connect角色的許可權 所以,一般在企業中,對一般使用者,只會賦予connect的許可權,讓他只有一些看,和連結資料庫的操作。擁有自己的會話
對開發人員,就會connect和resource都會賦予,因為,給予開發人員可以create。
(三)、系統許可權
系統許可權,會對所有的對象進行限制(例如,預存程序,表,簇,使用者,序列等等)
grant create any cluster to test;
grant create any index to test;
grant create any procedure to test;
grant create any role to test;
grant create rollback segment to test;
grant create any sequence to test;
grant create any synonym to test;
......可以查看相關係統許可權列表 使用情境:
當你配置了一個生產庫,要一個使用者test的時候,這個使用者只是唯讀使用者,那麼
就一般會給他一個select any table的系統許可權
grant select any table to test; 就是賦予使用者test查詢任何錶; 以上為個人筆記,學慣用。