Bài thực hành Bảo mật hệ thống thông tin số 7 Virtual private database

12 0 0
Tài liệu đã được kiểm tra trùng lặp
Bài thực hành Bảo mật hệ thống thông tin số 7 Virtual private database

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Microsoft Word ebb 81465437 704950818 575 Chương Trình Đào Tạo Từ Xa KH & KT Máy Tính – Đại học Bách Khoa TP HCM 1 Bảo Mật Hệ Thống Thông Tin Lab 7 Bài thực hành số 7 VIRTUAL PRIVATE DATABASE (2)  Tó[.]

Bảo Mật Hệ Thống Thông Tin Lab Bài thực hành số VIRTUAL PRIVATE DATABASE (2)  Tóm tắt nội dung:  Quyền EXEMPT ACCESS POLICY  Giám sát quyền EXEMPT ACCESS POLICY  Xử lý Exception Policy Function  Column Sensitive VPD I Quyền EXEMPT ACCESS POLICY A Lý thuyết  Tuy RLS cung cấp kỹ thuật bảo mật tốt, dẫn đến khó chịu thực tác vụ quản trị CSDL (ví dụ: tác vụ backup liệu) Như biết, DBA người chủ đối tượng khơng thể tránh sách bảo mật Nếu người chủ bảng DBA thực backup liệu bảng sách bảo mật có tác dụng, file backup khơng có liệu hết Vì lý (và số lý khác nữa), Oracle cung cấp quyền EXEMPT ACCESS POLICY Người cấp quyền miễn khỏi tất function RLS Người quản trị CSDL có nhiệm vụ thực backup cần có quyền để đảm bảo tất liệu backup lại B Thực hành  Ví dụ sau minh họa việc cấp quyền ảnh hưởng function RLS: system@KNOX10g> CONN system/manager Connected system@KNOX10g> SYSTEM bị ảnh hưởng policy function system@KNOX10g> Nên khơng có record delete system@KNOX10g> DELETE FROM scott.emp; rows deleted Chương Trình Đào Tạo Từ Xa KH & KT Máy Tính – Đại học Bách Khoa TP.HCM Bảo Mật Hệ Thống Thông Tin Lab system@KNOX10g> Cấp quyền để SYSTEM kg bị ảnh hưởng policy function system@KNOX10g> GRANT EXEMPT ACCESS POLICY TO SYSTEM; Grant succeeded system@KNOX10g> SYSTEM khơng cịn bị ảnh hưởng policy function system@KNOX10g> Tất record bị xóa system@KNOX10g> DELETE FROM scott.emp; 14 rows deleted system@KNOX10g> ROLLBACK; II Giám sát quyền EXEMPT ACCESS POLICY A Lý thuyết  Do quyền mạnh, không định cụ thể schema hay object nên ta cần cẩn trọng việc quản lý xem phép nắm giữ quyền Mặc định, user có quyền SYSDBA có quyền (account SYS)  Ta ngăn cản user cấp quyền khỏi việc lạm dụng quyền cấp Ta theo dõi xem họ làm với quyền cấp Auditing cách hiệu để đảm bảo quyền miễn trừ khỏi sách RLS khơng bị lạm dụng Auditing trình bày kỹ lab Auditing sau Trong phần mặc định sinh viên biết hiểu auditing Sinh viên đọc lại phần sau học Auditing B Thực hành  Ta kiểm tra xem cấp quyền EXEMPT ACCESS POLICY câu lệnh sau: Chương Trình Đào Tạo Từ Xa KH & KT Máy Tính – Đại học Bách Khoa TP.HCM Bảo Mật Hệ Thống Thông Tin Lab sec_mgr@KNOX10g> SELECT grantee FROM dba_sys_privs WHERE PRIVILEGE = 'EXEMPT ACCESS POLICY'; GRANTEE -SYSTEM  Ví dụ sau trình bày cách để audit quyền Đồng thời áp dụng việc này, ta cần kiểm tra xem việc audit thực nghĩ chưa sec_mgr@KNOX10g> Audit quyền EXEMPT ACCESS POLICY sec_mgr@KNOX10g> AUDIT EXEMPT ACCESS POLICY BY ACCESS; Audit succeeded sec_mgr@KNOX10g> Kiểm tra việc audit cách thực tác sec_mgr@KNOX10g> vụ account người cấp quyền sec_mgr@KNOX10g> CONN system/manager Connected system@KNOX10g> DELETE FROM scott.emp; 14 rows deleted system@KNOX10g> Rollback để undo lệnh delete system@KNOX10g> Lệnh Rollback khơng xóa audit record mà Oracle system@KNOX10g> vừa tạo SYSTEM thực lệnh DELETE system@KNOX10g> ROLLBACK ; Rollback complete system@KNOX10g> CONN sec_mgr/oracle10g Connected sec_mgr@KNOX10g> Hiển thị tác vụ vừa audit sec_mgr@KNOX10g> Chương Trình Đào Tạo Từ Xa KH & KT Máy Tính – Đại học Bách Khoa TP.HCM Bảo Mật Hệ Thống Thông Tin Lab BEGIN FOR rec IN (SELECT * FROM dba_audit_trail) LOOP DBMS_OUTPUT.put_line (' -'); DBMS_OUTPUT.put_line ('Who: ' || rec.username); DBMS_OUTPUT.put_line ('What: ' || rec.action_name || ' on ' || rec.owner || '.' DBMS_OUTPUT.put_line ('When: || rec.obj_name); ' || TO_CHAR(rec.TIMESTAMP,'MM/DD HH24:MI')); DBMS_OUTPUT.put_line ('How: "'|| rec.sql_text || '"'); DBMS_OUTPUT.put_line ('Using: ' || rec.priv_used); END LOOP; END; / Who: SYSTEM What: DELETE on SCOTT.EMP When: 04/04 14:22 How: "DELETE FROM scott.emp" Using: DELETE ANY TABLE Who: SYSTEM What: DELETE on SCOTT.EMP When: 04/04 14:22 How: "DELETE FROM scott.emp" Using: EXEMPT ACCESS POLICY PL/SQL procedure successfully completed  Audit trail hiển thị record SYSTEM sử dụng quyền thực lệnh DELETE Quyền thứ quyền DELETE ANY TABLE cho phép delete tất bảng Quyền thứ hai quyền EXEMPT ACCESS POLICY cho phép khơng bị ảnh hưởng bời sách bảo mật áp đặt cho bảng EMP Chương Trình Đào Tạo Từ Xa KH & KT Máy Tính – Đại học Bách Khoa TP.HCM Bảo Mật Hệ Thống Thông Tin Lab III Xử lý Exception Policy Function A Lý thuyết  Nói chung có loại error khiến cho sách RLS bị thất bại:  Policy function khơng hợp lệ khơng recompile thực thi Ví dụ, lỗi xảy policy truy vấn đến table khơng tồn Lỗi sách xảy policy function không tồn (việc thường policy function bị drop đăng ký không thủ tục ADD_POLICY)  Chuỗi trả policy function thêm vào câu lệnh SQL truy vấn đối tượng bảo vệ gây lỗi câu lệnh SQL không hợp lệ Có nhiều lý khiến cho việc xảy B Thực hành  Trong loại lỗi trên, loại thứ làm tính suốt VPD Ta xem ví dụ đây: scott@KNOX10g> Tạo table gọi policy function scott@KNOX10g> CREATE TABLE t AS SELECT * FROM DUAL; Table created scott@KNOX10g> Tạo policy function phụ thuộc vào table t scott@KNOX10g> CREATE OR REPLACE FUNCTION pred_function ( p_schema IN VARCHAR2 DEFAULT NULL, p_object IN VARCHAR2 DEFAULT NULL) RETURN VARCHAR2 AS l_total_recs NUMBER; BEGIN SELECT COUNT (*) INTO l_total_recs FROM t; RETURN '1 BEGIN DBMS_RLS.add_policy (object_schema => 'SCOTT', object_name => 'EMP', policy_name => 'people_sel_sal', function_schema => 'SEC_MGR', policy_function => 'user_only', statement_types => 'SELECT', sec_relevant_cols => 'SALARY'); END; / PL/SQL procedure successfully completed  Kiểm tra lại việc áp dụng sách trên: scott@KNOX10g> Người dùng thấy tất record scott@KNOX10g> salary không truy vấn scott@KNOX10g> Câu lệnh sau xuất record scott@KNOX10g> SELECT username FROM emp WHERE ROWNUM Thêm cột salary vào câu truy vấn, sách scott@KNOX10g> bảo mật áp dụng scott@KNOX10g> SELECT username, salary FROM emp; USERNAME SALARY -SCOTT Chương Trình Đào Tạo Từ Xa 3000 KH & KT Máy Tính – Đại học Bách Khoa TP.HCM 10 Bảo Mật Hệ Thống Thông Tin  Lab Có nhu cầu thực tế người quản trị mong muốn cho dù người dùng có tham khảo đến cột bảo vệ, kết trả chứa đầy đủ record giống khơng có tham khảo đến cột giá trị cột record bảo vệ có giá trị null Điều không giúp cho liệu trả cho người dùng đầy đủ mà giúp cho sách bảo mật trở nên suốt người dùng Cách tiếp cận gọi “column masking”  Xét tiếp ví dụ Điều ta mong đợi câu truy vấn có tham khảo đến cột salary, tất record thỏa câu truy vấn trả giá trị cột salary record user khác có giá trị null sec_mgr@KNOX10g> BEGIN Xóa sách DBMS_RLS.drop_policy (object_schema => 'SCOTT', object_name => 'EMP', policy_name => 'people_sel_sal'); Thêm lại sách với thay đổi tham số SEC_RELEVANT_COLS_OPT DBMS_RLS.add_policy (object_schema => 'SCOTT', object_name => 'EMP', policy_name => 'people_sel_sal', function_schema => 'SEC_MGR', policy_function => 'user_only', statement_types => 'SELECT', sec_relevant_cols => 'SALARY', sec_relevant_cols_opt => DBMS_RLS.all_rows); END; / PL/SQL procedure successfully completed scott@KNOX10g> SELECT username, salary FROM emp WHERE deptno = 20; Chương Trình Đào Tạo Từ Xa KH & KT Máy Tính – Đại học Bách Khoa TP.HCM 11 Bảo Mật Hệ Thống Thông Tin Lab USERNAME SALARY SMITH JONES SCOTT 3000 ADAMS FORD Lưu ý: tham số sec_relevant_cols_opt áp dụng cho câu lệnh select V Bài tập Hồn thiện sách bảo mật thực hành số (HolidayControl) để đảm bảo exception xảy không bộc lộ thông tin nhạy cảm sách bảo mật Chỉnh sửa lại sách bảo mật câu 1, cho phép Annu xem thông tin bảng Holiday xem ngày nghỉ Từ sách HolidayControl câu 2, thiết lập quyền không ảnh hưởng đảm bảo giám sát sách cho user Hann Thực thi số thay đổi liệu xem kết Chương Trình Đào Tạo Từ Xa KH & KT Máy Tính – Đại học Bách Khoa TP.HCM 12 ... thiện sách bảo mật thực hành số (HolidayControl) để đảm bảo exception xảy không bộc lộ thông tin nhạy cảm sách bảo mật Chỉnh sửa lại sách bảo mật câu 1, cho phép Annu xem thông tin bảng Holiday... TP.HCM Bảo Mật Hệ Thống Thông Tin Lab IV Column Sensitive VPD A Lý thuyết  Oracle Database 10g cung cấp thêm tính cho VPD gọi Column Sensitive VPD Mục đích tính thực sách bảo mật cột cần bảo vệ... 11 Bảo Mật Hệ Thống Thông Tin Lab USERNAME SALARY SMITH JONES SCOTT 3000 ADAMS FORD Lưu ý: tham số sec_relevant_cols_opt áp dụng cho câu lệnh select V Bài tập Hồn thiện sách bảo mật

Ngày đăng: 26/11/2022, 20:15

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

  • Đang cập nhật ...

Tài liệu liên quan