Bài giảng Cơ sở dữ liệu: Chương 7 An toàn và toàn vẹn dữ liệu, cung cấp cho người học những kiến thức như: Sự cần thiết phải bảo vệ an toàn dữ liệu; An toàn và quyền truy nhập của người dùng; Toàn vẹn dữ liệu. Mời các bạn cùng tham khảo!
Chương 7: An toàn toàn vẹn liệu GV: Hoàng Thị Hà Email: htha@vnua.edu.vn Nội dung Sự cần thiết phải bảo vệ an toàn liệu An toàn quyền truy nhập người dùng Toàn vẹn liệu 05/10/2018 Hoàng Thị Hà Sự cần thiết phải bảo vệ an toàn liệu Cơ sở liệu quan, xí nghiệp, ngành thường cài đặt tập trung hay phân tán máy chủ mạng, tài nguyên thông tin chung cho nhiều người sử dụng Vì xảy ra: Những sai sót ngồi ý muốn, thực thêm, sửa, xoá hay lỗi lập trình Truy nhập trái phép với mục đích xấu: sửa, xố thơng tin hay đánh cắp thơng tin Sự cố kỹ thuật lỗi thiết bị, lỗi lập trình Các hệ thống sở liệu cần thiết phải: quản trị, bảo vệ tập trung, nhằm bảo đảm tính tồn vẹn an tồn liệu 05/10/2018 Hoàng Thị Hà Toàn vẹn liệu Toàn vẹn liệu đảm bảo liệu hệ thống sở liệu xác thời điểm chừng mực Bảo đảm tính tồn vẹn liệu biện pháp bảo vệ liệu, chống lại sửa đổi hay phá hoại không chủ định 05/10/2018 Hoàng Thị Hà 2.1 Các ràng buộc toàn vẹn Ràng buộc kiểu Ràng buộc logic Ràng buộc giải tích 05/10/2018 Hồng Thị Hà 2.2 Ngôn ngữ vấn tin - ngôn ngữ ràng buộc tồn vẹn Có thể sử dụng ngơn ngữ DML làm ngơn ngữ kiểm tra ràng buộc tồn vẹn 05/10/2018 Hồng Thị Hà Ví dụ: Xét sở liệu quản lý cáp, ràng buộc liệu là: loại cáp lắp đặt tuyến cáp QLCAP, phải loại cáp có quan hệ QLKHO Nói cách khác, tất cáp lắp đặt tuyến phải có xuất xứ từ kho vật tư cơng ty Kết vấn tin biểu diễn đại số quan hệ sau: π MC# (QLCAP) ⊆ π TENC (QLKHO) Ví dụ Các đàm thoại có thời gian âm cấm nhập vào sở liệu: QLCUOC(TB, SDT, SDD, BD, KT) & (KT –BD) < Điều có nghĩa là, đàm thoại thuê bao TB từ điện thoại SDT đến điện thoại SDD với thời gian bắt đầu BD, thời gian kết thúc KT thời gian đàm thoại (KT – BD) < 0, dẫn đến mâu thuẫn nhận giá trị “False” Điều tương đương với khảng định không tồn đàm thoại có thời gian âm sở liệu QLCUOC 05/10/2018 Hoàng Thị Hà 2.3 Kiểm tra ràng buộc toàn vẹn Xét ví dụ Trước chèn thêm thơng tin loại cáp vào quan hệ QLCAP, cần phải kiểm tra xem loại cáp xuất kho hay chưa Tức phải kiểm tra loại cáp thêm vào CSDL QLCAP phần tử π TENC (QLKHO) hay khơng 05/10/2018 Hồng Thị Hà Vấn đề an toàn quyền truy nhập sở liệu 05/10/2018 Hoàng Thị Hà 3.1 Sự vi phạm an toàn sở liệu Các dạng truy cập có chủ định bao gồm: Không cho phép đọc liệu Không cho phép sửa đổi liệu Không cho phép phá huỷ liệu Vấn đề an toàn sở liệu đề cập đến việc bảo vệ chống lại truy cập có chủ định 05/10/2018 Hồng Thị Hà 10 3.2 Các mức độ an toàn sở liệu Mức độ an toàn hệ thống sở liệu Mức độ an toàn hệ thống điều hành An toàn mức độ mạng Nhận diện người sử dụn Bảo vệ mức vật lý Kiểm tra truy nhập 05/10/2018 Hoàng Thị Hà 11 3.3 Những quyền hạn sử dụng hệ sở liệu Đọc cách hợp pháp: người sử dụng phép đọc, không sửa đổi nội dung liệu Chèn cách hợp pháp: cho phép người sử dụng chèn thêm liệu vào sở liệu, khơng sửa đổi liệu có Sửa đổi cách hợp pháp: cho phép người sử dụng phép sửa đổi nội dung liệu, không xoá liệu Xoá cách hợp pháp: cho phép người sử dụng phép xoá liệu Cho phép việc tạo xoá số Cho phép việc tạo mối quan hệ Sửa đổi cấu trúc: cho phép chèn thêm, sửa đổi xoá thuộc tính quan hệ Xóa hợp pháp: cho phép xố quan hệ 05/10/2018 Hồng Thị Hà 12 Ví dụ Các mức truy nhập CSDL trao quyền cho lớp người sử dụng Người sử dụng phép truy nhập không điều kiện tới toàn sở liệu, với phép toán lưu trữ truy vấn liệu tr Người sử dụng không phép truy nhập tới phận sở liệu, với phép tốn Người sử dụng đọc nội dung công việc họ sở liệu, không phép sửa đổi, bổ sung Người sử dụng đọc nội dung công việc họ sở liệu, phép sửa đổi, bổ sung Người sử dụng đọc sửa đổi thuộc tính mã nhân viên, họ tên nhân viên, đơn vị công tác theo định kỳ vào tuần đầu tháng Người sử dụng cấm đọc thuộc tính nhận xét hàng năm, thuộc tính mức lương ngày lên lương đọc sửa đổi, thuộc tính khác đọc Công việc thực khoảng thời gian từ đến 11 ngày tuần cuối tháng Người sử dụng có quyền sử dụng phép toán thống kê cho mức lương để tính mức lương trung bình đơn vị Cấm sửa đổi liệu 05/10/2018 Hoàng Thị Hà 13 3.4 Khung nhìn –một chế bảo vệ Khung nhìn có ưu điểm: Tạo điều kiện thuận lợi lập trình trình ứng dụng Làm tăng tính độc lập liệu logic Được sử dụng chế bảo vệ Có hai loại khung nhìn Loại khung nhìn đọc, khơng cho phép sửa đổi Loại khung nhìn cho phép vừa đọc, vừa quyền sửa đồi, bổ sung 05/10/2018 Hồng Thị Hà 14 Ví dụ: Ví dụ hoạt động ngân hàng, thư ký cần biết tên tất khách hàng có khoản vay nhiều chi nhánh Người thư ký không phép xem thông tin khoản vay đặc biệt mà khách hàng có Hành động cô thư ký bị từ chối truy nhập trực tiếp tới quan hệ cho vay, truy nhập khung nhìn cust-loan bao gồm thơng tin như: tên khách hàng chi nhánh nơi mà khách có khoản vay 05/10/2018 Hồng Thị Hà 15 Vid dụ (tiếp) Khung nhìn định nghĩa SQL sau: CREATE VIEW cust-loan AS (SELECT branch-name, customer-name FROM borrower, loan WHERE borrower.loan-number = loan.loan-number) Giả sử cô thư ký đưa truy vấn SQL sau: SELECT * FROM cust-loan 05/10/2018 Hoàng Thị Hà 16 3.5 Cấp phép quyền truy nhập Một người sử dụng cấp vài quyền truy nhập sở liệu quyền hạn tham chiếu đến quyền truy nhập người sử dụng khác Người quản trị sở liệu cần phải đặc biệt lưu ý quyền lưu thông qua nhiều người sử dụng, cho quyền thu hồi thời điểm tùy ý 05/10/2018 Hoàng Thị Hà 17 3.6 Kiểm tra dấu vết Nhiều ứng dụng bảo mật sở liệu cần trì chế kiểm tra dấu vết Một kiểm tra dấu vết lưu tất thay đổi thực phép lưu trữ như: Thêm Xóa Sửa 05/10/2018 Hồng Thị Hà 18 Ví dụ Nếu tài khoản phát bất thường, người quản trị lần dấu vết tất cập nhật xảy tài khoản để tìm thấy cập nhật khơng (có thể gian lận) người thực việc cập nhật Tạo kiểm tra dấu vết cách định nghĩa chuỗi phản ứng thích hợp cập nhật quan hệ Tuy nhiên nhiều hệ thống sở liệu cung cấp phương pháp tạo kiểm tra dấu vết thuận tiện dễ sử dụng 05/10/2018 Hồng Thị Hà 19 Câu hỏi ơn tập Xem Chương 7, tài liệu Bài giảng đầy đủ 05/10/2018 Hồng Thị Hà 20 05/10/2018 Hồng Thị Hà 21 ... thống sở liệu cung cấp phương pháp tạo kiểm tra dấu vết thuận tiện dễ sử dụng 05/10/2018 Hoàng Thị Hà 19 Câu hỏi ôn tập Xem Chương 7, tài liệu Bài giảng đầy đủ 05/10/2018 Hồng Thị Hà 20 05/10/2018... (SELECT branch-name, customer-name FROM borrower, loan WHERE borrower.loan-number = loan.loan-number) Giả sử cô thư ký đưa truy vấn SQL sau: SELECT * FROM cust-loan 05/10/2018 Hoàng Thị Hà 16 3.5... QLCAP phần tử π TENC (QLKHO) hay không 05/10/2018 Hoàng Thị Hà Vấn đề an toàn quyền truy nhập sở liệu 05/10/2018 Hoàng Thị Hà 3.1 Sự vi phạm an toàn sở liệu Các dạng truy cập có chủ định