CÁC QUYỀN HỆ THỐNG

9 557 2
CÁC QUYỀN HỆ THỐNG

Đang tải... (xem toàn văn)

Thông tin tài liệu

CÁC QUYỀN HỆ THỐNG 1.1.PHÂN LOẠI QUYỀN Oracle database có khoảng 80 quyền hệ thống và con số này đang tiếp tục tăng lên. Các quyền hệ thống có thể chia ra như sau:  Các quyền cho phép thực hiện các thao tác mức độ rộng trên hệ thống ví dụ như: CREATE SESSION, CREATE TABLESPACE.  Các quyền cho phép quản lý các đối tượng thuộc về một user ví dụ: CREATE TABLE  Các quyền cho phép quản lý các đối tượng trong bất cứ một schema nào ví dụ câu lệnh: CREATE ANY TABLE. Có th ể điều khiển các quyền bằng cách câu lệnh GRAND hay REVOKE. Chú ý: Các users có quyền ANY đều có thể truy xuất các bảng thuộc data dictionary ngoại trừ các tiền tố USER_ALL và bất cứ views nào trên đó các quyền được gán cho PUBLIC. 1.1.1. Các quyền hệ thống Phân loại Ví dụ INDEX CREATE ANY INDEX ALTER ANY INDEX DROP ANY INDEX TABLE CREATE TABLE CREATE ANY TABLE ALTER ANY TABLE DROP ANY TABLE SELECT ANY TABLE UPDATE ANY TABLE DELETE ANY TABLE SESSION CREATE SESSION ALTER SESSION RESTRICTED SESSION TABLESPACE CREATE TABLESPACE ALTER TABLESPACE DROP TABLESPACE UNLIMITED TABLESPACE  Không có quyền CREATE INDEX  Các quyền như CREATE TABLE, CREATE PROCEDURE, CREATE CLUSTER bao g ồm cả các quyền xoá các đối tượng đó.  CREATE TABLE bao gồm các quyền CREATE INDEX và ANALYZE, Các user cần có đủ quota trên tablespace hay phải được gán UNLIMITED TABLESPACE .  Để truncate các bảng thì quyền DROP ANY TABLE được sử dụng. 1.1.2. Gán các quyền hệ thống Sử dụng cú pháp sau đây để gán quyền hệ thống cho user Cú pháp: GRANT {system_priv|role} [, {system_priv|role} ] . TO {user|role|PUBLIC} [, {user|role|PUBLIC} ] . [WITH ADMIN OPTION] Với: system_priv chỉ định quyền hệ thống sử dụng role ch ỉ định tên chức danh được gán PUBLIC gán quy ền hệ thống cho tất cả các user WITH ADMIN OPTION cho phép user được gán quyền có thể gán quy ền hay chức danh đó cho user khác. Ví dụ: GRANT CREATE SESSION, CREATE TABLE TO user1; Ho ặc GRANT CREATE SESSION TO scott WITH ADMIN OPTION; Một số hướng dẫn  Để có quyền hệ thống, user cần được gán quyền có kèm thêm tuỳ chọn WITH ADMIN OPTION .  Người được gán với tuỳ chọn WITH ADMIN OPTION có thể tiếp tục gán cho một user khác quy ền hệ thống với WITH ADMIN OPTION.  Bất cứ một user nào có quyền GRANT ANY ROLE có thể gán bất kì quyền nào trong database.  Người được gán với tuỳ chọn WITH ADMIN OPTION có thể gán quyền hay lấy lại các quy ền từ bất cứ user hay role nào trong database. 1.1.3. Xác nhận user bằng password file Trong chương quản lý database, ta đã biết đến hai quyền hệ thống là SYSDBA và SYSOPER. Các quyền này được sử dụng chỉ định rằng việc xác lập user thông qua password file. Chỉ có người quản trị hệ thống mới có thể có khả năng connect vào database với quyền qu ản trị. Kết nối với quyền SYSDBA sẽ cho phép user có quyền thực thi không giới hạn đối với các hoạt động trên database hay đối tượng trong database. Bảng sau đây phân biệt giữa hai loại quyền SYSDBA và SYSOPER Phân loại Ví dụ SYSOPER STARTUP SHUTDOWN ALTER DATABASE OPEN | MOUNT ALTER DATABASE BACKUP CONTROLFILE ALTER TABLESPACE BEGIN/END BACKUP RECOVER DATABASE, ALTER DATABASE ARCHIVELOG RESTRICTED SESSION SYSDBA SYSOPER privileges WITH ADMIN OPTION CREATE DATABASE RECOVER DATABASE UNTIL Sau khi tạo password file bằng công cụ password và khởi tạo tham số trong initialization file: REMOTE_LOGIN_PASSWORD_FILE=EXCLUSIVE Người quản trị hệ thống có thể thêm các user vào trong password file bằng cách gán các quy ền SYSDBA và SYSOPER cho user. Tu ỳ chọn WITH ADMIN OPTION không được sử dụng cho việc gán các quyền này. Chỉ có user hiện đang được nối đến database với quyền SYSDBA mới có thể gán và lấy lại SYSDBA hay SYSOPER cho các user khác. Các quyền này không thể được gán cho một role b ởi vì các role không tồn tại khi database startup. View V$PWFILE_USERS chứa thông tin về các user được gán quyền SYSDBA và SYSOPER. SVRMGR> SELECT * FROM v$pwfile_users; USERNAME SYSDB SYSOP ----------------- --------- ----------- INTERNAL TRUE TRUE SYS TRUE TRUE 2 rows selected. 1.1.4. Thông tin về các quyền Thông tin về các quyền được lấy từ các view data dictionary: DBA_SYS_PRIVS và SESSION_PRIVS. Các thông tin bao g ồm:  DBA_SYS_PRIVS: GRANTEE, PRIVILEGE, ADMIN OPTION  SESSION_PRIVS: PRIVILEGE Ví dụ: L ịêt kê các quyền hệ thống được gán cho user và role: SVRMGR>SELECT * FROM DBA_SYS_PRIVS; GRANTEE PRIVILEGE ADM ---------- --------------- ----- . SCOTT SELECT ANY TABLE NO SYS DELETE ANY TABLE NO SYS EXECUTE ANY TYPE NO SYS INSERT ANY TABLE NO SYS SELECT ANY SEQUENCE NO SYS SELECT ANY TABLE YES SYS UPDATE ANY TABLE NO SYSTEM UNLIMITED TABLESPAC YES . View SESSION_PRIVS liệt kê các quyền có sẵn cho session hiện tại cho một user. SVRMGR> SELECT * FROM session_privs; PRIVILEGE ---------------------------------------- CREATE SESSION ALTER SESSION CREATE TABLE SELECT ANY TABLE CREATE CLUSTER CREATE SYNONYM CREATE VIEW CREATE SEQUENCE CREATE DATABASE LINK CREATE PROCEDURE CREATE TRIGGER CREATE TYPE 12 rows selected. 1.2.QUẢN LÝ QUYỀN 1.2.1. Thu hồi các quyền hệ thống Sử dụng cú pháp sau đây để lấy lại các quyền hệ thống. Cú pháp: REVOKE {system_priv|role} [, {system_priv|role} ] . FROM {user|role|PUBLIC} [, {user|role|PUBLIC} ] . Ví dụ: REVOKE CREATE TABLE FROM user1; Ho ặc: REVOKE CREATE SESSION FROM scott; Chú ý:  Câu lệnh REVOKE chỉ có thể lấy lại quyền của mà đã được gán trực tiếp bằng câu l ệnh GRANT.  Thu hồi các quyền hệ thống có thể ảnh hưởng đến một số các đối tượng phụ thuộc. Ví dụ: nếu quyền SELECT ANY TABLE được gán cho user và user đó đượ c gán các thủ tục hay view mà sử dụng các bảng thuộc về các user khác thì vi ệc lấy lại các quyền sẽ làm cho các thủ tục hay view đó trở nên không hợp lệ. Thu hồi các quyền sử dụng có WITH ADMIN OPTION Hai hình dưới đây sử minh hoạ việc thu hồi các quyền hệ thống sử dụng WITH ADMIN OPTION . Hình vẽ 1. Thu hồi quyền – trước khi thu hồi Hình vẽ 2. Thu hồi quyền – sau khi thu hồi Không có s ự ảnh hưởng lan truyền khi thu hồi quyền hệ thống, khi sử dụng tuỳ chọn WITH ADMIN OPTION. 1.2.2. Quyền trên các đối tượng Mỗi quyền trên đối tượng được gán cho phép người dùng được gán thực thi một số thao tác trên đối tượng, bảng dưới đây liệt kê các quyền có thể được gán trên một đối tượng. Quyền Table View Sequence Procedure ALTER X X DELETE X X EXECUTE X INDEX X INSERT X X REFERENCES X SELECT X X X UPDATE X X 1.2.3. Gán các quyền trên đối tượng Sử dụng cú pháp sau đây để gán một quyền trên đối tượng. Cú pháp: GRANT { object_priv [(column_list)] [, object_priv [(column_list)] ] . |ALL [PRIVILEGES]} ON [schema.]object TO {user|role|PUBLIC} [, {user|role|PUBLIC} ] . [WITH GRANT OPTION] Với: object_priv chỉ định quyền đối tượng được gán column_list ch ỉ định các cột của một bảng hay view (tuỳ chọn này chỉ sử dụng khi gán các quy ền INSERT,REFERENCES hay UPDATE. ALL gán t ất cả các quyền cho đối tượng mà đã được gán với WITH ADMIN OPTION. ON object ch ỉ định đối tượng trên đó các quyền được gán . WITH GRANT OPTION cho phép người được gán quyền có thể gán các quy ền đó cho một user khác. Lưu ý:  Để gán các quyền, các đối tượng phải thuộc về schema của user gán hoặc cần có quy ền WITH GRANT OPTION.  Mặc định nếu một object thuộc về một user nào đó thì user đó có đầy đủ các quy ền trên đối tượng đó.  Tuỳ chọn WITH ADMIN OPTION không dùng cho việc gán các quyền cho các ch ức danh. 1.2.4. Thông tin về các quyền Thông tin về các quyền được lưu trữ trong các data dictionary. M ột số thông tin ta cần quan tâm:  DBA_TAB_PRIVS: GRANTEE, OWNER, TABLE_NAME, GRANTOR, PRIVILEGE, GRANTABLE  DBA_COL_PRIVS: GRANTEE, OWNER, TABLE_NAME, COLUMN_NAME, GRANTOR, PRIVILEGE, GRANTABLE Truy vấn thông tin trên bảng DBA_TAB_PRIVS để lấy thông tin về các quyền trên đối tượng được gán cho user. svrmgr> SELECT * FROM dba_tab_privs 2> WHERE GRANTEE=’SCOTT’ GRANTEE OWNER TABLE_NAME GRA PRIVILEGE GRA --------- ----- ----------- ----- ---------- ----- SCOTT SYS RESUMES SYS READ NO 1 row selected. 1.2.5. Thu hồi các quyền trên đối tượng Sử dụng cú pháp sau đây để lấy lại quyền đã cấp. Cú pháp: REVOKE { object_priv [, object_priv ] . |ALL [PRIVILEGES] } ON [schema.]object FROM {user|role|PUBLIC} [, {user|role|PUBLIC} ] . [CASCADE CONSTRAINTS] Với: object_pri chỉ định quyền trên đối tượng đã được gán ALL thu h ồi toàn bộ các quyền trên đối tượng đã được gán cho user. ON ch ỉ định đối tượng trên đó các quyền trên đối tượng được thu hồi. FROM ch ỉ định user hay role bị thu hồi quyền. CASCADE CONSTRAINTS xoá t ất cả các tham chiếu mà việc thu hồi đã được định nghĩa do sử dụng quyền REFERENCES hay ALL. Ví du: REVOKE execute ON dbms_pipe FROM scott; Lấy lại các quyền đối tượng khi sử dụng mệnh đề WITH GRANT OPTION Việc thu hồi các quyền đối tượng sẽ dẫn đến các việc thu hồi các quyền lan truyền. Hình sau minh ho ạ quá trình lan truyền đó: Hình vẽ 3. Thu hồi quyền trên đối tượng – trước khi thu hồi Hình vẽ 4. Thu hồi quyền trên đối tượng – sau khi thu hồi . CÁC QUYỀN HỆ THỐNG 1.1.PHÂN LOẠI QUYỀN Oracle database có khoảng 80 quyền hệ thống và con số này đang tiếp tục tăng lên. Các quyền hệ thống có. TYPE 12 rows selected. 1.2.QUẢN LÝ QUYỀN 1.2.1. Thu hồi các quyền hệ thống Sử dụng cú pháp sau đây để lấy lại các quyền hệ thống. Cú pháp: REVOKE {system_priv|role}

Ngày đăng: 20/10/2013, 19:15

Hình ảnh liên quan

Các users có quyền ANY đều có thể truy xuất các bảng thuộc data dictionary ngoại trừ các tiền tố USER_ALLvà bất cứviewsnào trên đó các quyền được gán cho PUBLIC. - CÁC QUYỀN HỆ THỐNG

c.

users có quyền ANY đều có thể truy xuất các bảng thuộc data dictionary ngoại trừ các tiền tố USER_ALLvà bất cứviewsnào trên đó các quyền được gán cho PUBLIC Xem tại trang 1 của tài liệu.
Bảng sau đây phân biệt giữa hai loại quyền SYSDBA và SYSOPER - CÁC QUYỀN HỆ THỐNG

Bảng sau.

đây phân biệt giữa hai loại quyền SYSDBA và SYSOPER Xem tại trang 3 của tài liệu.
Hai hình dưới đây sử minh hoạ việc thu hồi các quyền hệ thống sử dụng WITH ADMIN OPTION. - CÁC QUYỀN HỆ THỐNG

ai.

hình dưới đây sử minh hoạ việc thu hồi các quyền hệ thống sử dụng WITH ADMIN OPTION Xem tại trang 5 của tài liệu.
Việc thu hồi các quyền đối tượng sẽ dẫn đến các việc thu hồi các quyền lan truyền. Hình sau minh hoạquá trình lan truyền đó: - CÁC QUYỀN HỆ THỐNG

i.

ệc thu hồi các quyền đối tượng sẽ dẫn đến các việc thu hồi các quyền lan truyền. Hình sau minh hoạquá trình lan truyền đó: Xem tại trang 8 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan