Bảo mật là vấn đề chung cho cả hệ CSDL và những hệ thống khác.
Bảo mật trong CSDL là:
- Ngăn chặn các truy cập không được phép;
- Hạn chế tối đa các sai sót của người dùng;
- Đảm bảo thông tin không bị mất hoặc bị thay đổi ngoài ý muốn;
- Không tiết lộ nội dung dữ liệu cũng như chương trình xử lí;
- Các giải pháp chủ yếu cho bảo mật hệ thống là chính sách và ý thức, phân quyền truy cập và nhận dạng người dùng, mã hoá thông tin và nén dữ liệu, lưu biên bản.
1.1. Chính sách và ý thức
Việc bảo mật có thể thực hiện bằng các giải pháp kĩ thuật cả phần cứng lẫn phần mềm. Tuy nhiên hiệu quả việc bảo mật phụ thuộc rất nhiều vào các chủ trương, chính sách của chủ sở hữu thông tin và ý thức của người dùng.
- Ở cấp quốc gia: bảo mật phụ thuộc vào sự quan tâm của chính phủ trong việc ban hành các chủ trương, chính sách, điều luật qui định của nhà nước.
- Người phân tích, thiết kế và người QTCSDL: phải có các giải pháp tốt về phần cứng và phần mềm thích hợp.
- Người dùng: phải có ý thức bảo vệ thông tin.
1.2. Phân quyền truy cập và nhận dạng người dùng
- Người QTCSDL cần cung cấp:
- Bảng phân quyền truy cập cho hệ CSDL.
- Phương tiện cho người dùng hệ QTCSDL nhận biết đúng được họ.
- Người dùng muốn truy cập vào hệ thống cần khai báo:
- Tên người dùng.
- Mật khẩu.
- Dựa vào hai thông tin này, hệ QTCSDL xác minh để cho phép hoặc từ chối quyền truy cập CSDL.
Dựa vào hai thông tin này, hệ QTCSDL xác minh để cho phép hoặc từ chối quyền truy cập CSDL (chẳng hạn khai báo đúng tên người dùng nhưng không đúng mật khẩu của người dùng đó).
Chú ý:
- Đối với nhóm người truy cập cao thì cơ chế nhận dạng có thể phức tạp hơn.
- Hệ QTCSDL cung cấp cho người dùng cách thay đổi mật khẩu, tăng cường khả năng bảo vệ mật khẩu.
1.3. Mã hóa thông tin và nén dữ liệu
-
Các thông tin quan trọng và nhạy cảm thường được lưu trữ dưới dạng mã hoá để giảm khả năng rò rỉ. Có nhiều cách mã hoá khác nhau. Ở lớp 10 ta đã làm quen một cách để bảo vệ thông tin là mã hoá theo quy tắc vòng tròn, thay mỗi kí tự bằng một kí tự khác, cách kí tự đó một số vị trí xác định trong bảng chữ cái. Dưới đây ta xét thêm một cách mã hoá khác là nén dữ liệu để giảm dung lượng bộ nhớ lưu trữ dữ liệu đó.
- Mã hóa độ dài loạt là một cách nén dữ liệu khi trong tệp dữ liệu có các kí tự được lặp lại liên tiếp.
-
Ngoài mục đích giảm dung lượng lưu trữ, nén dữ liệu cũng góp phần tăng cường tính bảo mật của dữ liệu. Khi có dữ liệu dạng nén, cần biết quy tắc nén mới có dữ liệu gốc được.
- Chú ý: Các bản sao dữ liệu thường được mã hóa và nén bằng các chương trình riêng.
1.4. Lưu biên bản
- Ngoài các giải pháp nêu trên, người ta còn tổ chức lưu biên bản hệ thống.
- Biên bản hệ thống thông tường cho biết:
- Số lần truy cập vào hệ thống, vào từng thành phần của hệ thống, vào từng yêu cầu tra cứu,…
- Thông tin về số lần cập nhật cuối cùng: phép cập nhật, người thực hiện, thời điểm cập nhật,…
- Biên bản hệ thống hỗ trợ đáng kể cho việc khôi phục hệ thống khi có sự cố kĩ thuật, đồng thời cung cấp thông tin cho phép đánh giá mức độ quan tâm của người dùng đối với hệ thống nói chung và với từng thành phần của hệ thống nói riêng.
-
Có nhiều yếu tố của hệ thống bảo vệ có thể thay đổi trong quá trình khai thác hệ CSDL, ví dụ như mật khẩu của người dùng, phương pháp mã hoá thông tin,… Những yếu tố này được gọi là các tham số bảo vệ.
- Để nâng cao hiệu quả bảo mật, các tham số của hệ thống bảo vệ phải thường xuyên được thay đổi.
- Cần lưu ý là hiện nay các giải pháp cả phần cứng lẫn phần mềm chưa đảm bảo hệ thống được bảo vệ an toàn tuyệt đối.