Chương 4: Điều khiển truy cập tùy quyền Discretionary Access Controls (DAC) Khoa Khoa học Kỹ thuật Máy tính Đại học Bách Khoa Tp.HCM Nội dung Giới thiệu điểu khiển truy cập tùy quyền Mơ hình điểu khiển truy cập tùy quyền Điều khiển liệu với SQL DAC điều khiển dịng thơng tin Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) Giới thiệu DAC n Điều khiển truy cập tùy quyền (Discretionary Access Control -DAC): n n n Người dùng bảo vệ thuộc Chủ liệu có tồn quyền liệu Chủ liệu có quyền định nghĩa loại truy cập đọc/ghi/thực thi (read/write/execute/…) gán quyền cho người dùng khác Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thơng tin Chương 4: Điều khiển truy cập tùy quyền (DAC) Giới thiệu DAC n Cách thức điều khiển truy cập DAC hệ sở liệu (HCSDL) dựa vào thao tác bản: n n Gán quyền (granting privileges): cho phép người dùng khác quyền truy cập lên đối tượng làm chủ Thu hồi quyền (revoking privileges): thu hồi lại quyền gán cho người dùng khác Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thơng tin Chương 4: Điều khiển truy cập tùy quyền (DAC) Các loại quyền DAC n n Quyền cấp tài khoản/hệ thống (account/system level): quyền độc lập với đối tượng HCSDL Những quyền người quản trị hệ thống định nghĩa gán cho người dùng Quyền cấp đối tượng (object level): quyền đối tượng hệ CSDL người dùng tạo đối tượng có tất quyền đối tượng Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thơng tin Chương 4: Điều khiển truy cập tùy quyền (DAC) Các loại quyền DAC n Quyền cấp tài khoản/hệ thống: gồm có quyền n n n n n n n CREATE SCHEMA: tạo lược đồ CSDL CREATE TABLE: tạo bảng liệu/ quan hệ (relation) CREATE VIEW: tạo view ALTER: chỉnh sửa schema/relation DROP: xóa relation/view MODIFY: quyền thêm/ xóa/ sửa hàng liệu (record/ tuple) SELECT: quyền thực câu truy vấn thông tin CSDL Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) Các loại quyền DAC n Quyền cấp đối tượng: gồm đối tượng liệu loại truy cập mà người dùng phép thực đối tượng n n Các đối tượng liệu gồm: relation view Các thao tác gồm: n n n n INSERT: thêm liệu vào relation UPDATE: cập nhật /chỉnh sửa liệu relation DELETE: xóa liệu relation REFERENCE: tham khảo đến liệu relation Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thơng tin Chương 4: Điều khiển truy cập tùy quyền (DAC) Nội dung Giới thiệu điểu khiển truy cập tùy quyền Mơ hình điểu khiển truy cập tùy quyền Điều khiển liệu với SQL DAC điều khiển dịng thơng tin Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) Mơ hình bảo mật n n n Mơ hình bảo mật (Security model) Mơ hình ma trận truy cập (Access matrix model) Mơ hình Take-Grant (Take-Grant model) Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) Mơ hình bảo mật n n n n Mơ hình bảo mật (Security model) cung cấp cách biểu diễn giàu ngữ nghĩa cho thuộc tính cấu trúc thuộc tính chức (functional and structural properties) hệ thống bảo mật Mơ hình bảo mật giúp biểu diễn đặc tả yêu cầu bảo mật cho hệ thống Mơ hình bảo mật mơ hình ý niệm cấp cao (high-level conceptual model) độc lập với phần mềm Mơ hình bảo mật dùng để chứng minh tính chất cần có bảo mật hệ thống thông tin 10 Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 10 Điều khiển liệu với SQL n Điều khiển truy cập tùy quyền VIEW (quan hệ ảo) n n người dùng A chủ quan hệ R A muốn gán cho người dùng B quyền truy xuất R muốn cho B xem số thuộc tính định A tạo view V R chứa thuộc tính sau gán cho B quyền SELECT V Tương tự, A muốn giới hạn B xem số hàng quan hệ R A tạo view V’ chứa hàng R sau gán quyền truy xuất V’ cho B Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 38 Ví dụ n n Nhà quản trị CSDL (Database administrator - DBA) tạo người dùng: A1, A2, A3, A4 DBA gán cho A1 quyền tạo quan hệ GRANT CREATETAB TO A1; n DBA tạo schema EXAMPLE cho phép A1 quyền thao tác CREATE SCHEMA EXAMPLE AUTHORIZATION A1; Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 39 Ví dụ n n A1 tạo quan hệ schema EXAMPLE A1 tạo quan hệ EMPLOYEE DEPARTMENT n A1 chủ quan hệ EMPLOYEE DEPARTMENT nên A1 có tất quyền quan hệ Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 40 Ví dụ n A1 muốn gán cho A2 quyền INSERT DELETE hai quan hệ trên, khơng cho phép A2 truyền quyền cho người dùng khác GRANT INSERT, DELETE ON EMPLOYEE, DEPARTMENT TO A2; n Và A1 muốn cho phép A3 truy vấn thông tin từ quan hệ, đồng thời truyền quyền SELECT cho người dùng khác GRANT SELECT ON EMPLOYEE, DEPARTMENT TO A3 WITH GRANT OPTION; Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 41 Ví dụ n A3 gán quyền SELECT quan hệ EMPLOYEE cho A4: GRANT SELECT ON EMPLOYEE TO A4; n A4 truyền quyền SELECT cho người dùng khác khơng có GRANT OPTION Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 42 Ví dụ n Sau đó, A1 định thu hồi lại quyền SELECT quan hệ EMPLOYEE A3 REVOKE SELECT ON EMPLOYEE FROM A3; n Hệ quản trị CSDL (Database Management System – DBMS) phải tự động thu hồi lại quyền SELECT quan hệ EMPLOYEE A4 Bởi A3 gán cho A4 quyền mà A3 khơng cịn quyền Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 43 Ví dụ n Giả sử A1 muốn gán lại cho A3 quyền truy vấn có giới hạn quan hệ EMPLOYEE cho phép A3 lan truyền quyền n n A3 xem thuộc tính NAME, BDATE ADDRESS hàng có giá trị DNO = A1 tạo view A3EMPLOYEE sau: CREATE VIEW A3EMPLOYEE AS SELECT NAME, BDATE, ADDRESS FROM EMPLOYEE WHERE DNO = 5; Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 44 Ví dụ n n Sau tạo view, A1 gán quyền SELECT view A3EMPLOYEE cho A3: GRANT SELECT ON A3EMPLOYEE TO A3 WITH GRANT OPTION; Sau cùng, A1 muốn cho phép A4 cập nhật thuộc tính SALARY quan hệ EMPLOYEE; GRANT UPDATE ON EMPLOYEE (SALARY) TO A4; Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thơng tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 45 Nội dung Giới thiệu điểu khiển truy cập tùy quyền Mơ hình điểu khiển truy cập tùy quyền Điều khiển liệu với SQL DAC điều khiển dịng thơng tin Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thơng tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 46 DAC Điều khiển dịng thơng tin n n n Khuyết điểm DAC: cho phép dịng thơng tin từ đối tượng truyền sang đối tượng khác cách đọc thông tin lên từ đối tượng ghi thông tin xuống đối tượng khác Ví dụ: Bob khơng phép xem file A, nên nhờ Alice (đồng lõa với Bob) copy nội dung file A sang file B (Bob xem file B) Giả sử người dùng đáng tin cậy khơng làm việc Trojan Horses làm việc chép thông tin từ đối tượng sang đối tượng khác Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thơng tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 47 Ví dụ Trojan horse Bob đọc nội dung file A Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 48 Ví dụ Trojan horse Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 49 Trojan horse Example Bob đọc nội dung file A sau chép sang file B Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 50 Nội dung Giới thiệu điểu khiển truy cập tùy quyền Mơ hình điểu khiển truy cập tùy quyền Điều khiển liệu với SQL DAC điều khiển dịng thơng tin Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 51 52 Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học Kỹ Thuật Máy Tính © 2011 Bảo mật hệ thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 52 ... thống thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) Nội dung Giới thiệu điểu khiển truy cập tùy quyền Mơ hình điểu khiển truy cập tùy quyền Điều khiển liệu với SQL DAC điều khiển dịng thơng... thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 29 Nội dung Giới thiệu điểu khiển truy cập tùy quyền Mơ hình điểu khiển truy cập tùy quyền Điều khiển liệu với SQL DAC điều khiển dịng... thông tin Chương 4: Điều khiển truy cập tùy quyền (DAC) 11 Mơ hình bảo mật tùy quyền n n Mơ hình bảo mật tùy quyền, mơ hình điều khiển truy cập tùy quyền (DAC model), quản lý điểu khiển truy cập người