Chương 3: BẢO MẬT HỆ THỐNG PHẦN MỀM TRONG .NET
3.1. Tổng quan kiến trúc bảo mật hệ thống phần mềm
3.1.2. Phân tích yêu cầu bảo mật
Một hệ thống bảo mật là một hệ thống mà thông tin được xử lý trên nó phải đảm bảo được 3 yêu cầu sau đây [3]:
3.1.2.1. Tính bí mật (Confidentialy)
Tính bí mật của thông tin là tính giới hạn về đối tượng được quyền truy xuất đến thông tin, bảo vệ dữ liệu không bị lộ ra ngoài một cách trái phép. Đối tượng truy xuất có thể là con người, là máy tính hoặc phần mềm, kể cả phần mềm phá hoại như virus, worm, spyware, … Ví dụ, trong hệ thống ngân hàng, một khách hàng được phép xem thông tin số dư tài khoản của mình nhưng không được phép xem thông tin của khách hàng khác.
Để đảm bảo tính bí mật của thông tin, ngoài các cơ chế và phương tiện vật lý như thiết bị lưu trữ, nơi đặt thiết bị, dịch vụ bảo vệ,… thì kỹ thuật mật mã hóa (Cryptography) được xem là công cụ bảo mật thông tin hữu hiệu nhất trong môi trường máy tính. Ngoài ra, kỹ thuật quản lý truy xuất (Access Control) cũng được thiết lập để bảo đảm chỉ có những đối tượng được cho phép mới có thể truy xuất thông tin.
3.1.2.2. Tính toàn vẹn (Integrity)
Tính toàn vẹn là đảm bảo sự tồn tại nguyên vẹn của thông tin, dữ liệu, chỉ những người dùng được ủy quyền mới được phép chỉnh sửa dữ liệu. Tính toàn vẹn được xét trên hai khía cạnh là tính nguyên vẹn của dữ liệu và tính xác thực của nguồn gốc dữ liệu. Nói một cách khác, tính toàn vẹn của dữ liệu phải được đánh giá trên hai mặt: toàn vẹn về nội dung và toàn vẹn về nguồn gốc. Ví dụ, trong hệ thống ngân hàng, không cho phép khách hàng tự thay đổi thông tin số dư tài khoản của mình.
3.1.2.3. Tính khả dụng (Availability)
Tính khả dụng là tính sẵn sàng của thông tin, dữ liệu đảm bảo dữ liệu luôn sẵn sàng khi những người dùng hoặc ứng dụng được ủy quyền yêu cầu truy xuất. Ví dụ, trong hệ thống ngân hàng cần đảm bảo rằng khách hàng có thể truy vấn thông tin số dư tài khoản bất kỳ lúc nào theo như quy định.
Tính khả dụng là một yêu cầu rất quan trọng của hệ thống, bởi vì một hệ thống tồn tại nhưng không sẵn sàng cho sử dụng thì cũng giống như không tồn tại một hệ thống thông tin nào. Một hệ thống khả dụng là một hệ thống làm việc trôi chảy và hiệu quả, có khả năng phục hồi nhanh chóng nếu có sự cố xảy ra.