Mô hình RBAC cơ sở bao gồm 5 thành phần chính: (1) ngƣời dùng, (2) vai trò, (3) quyền, trong đó quyền truy cập là sự kết hợp của (4) thao tác thực hiện trên (5) đối tƣợng. Trung tâm của RBAC là khái niệm về vai trò, vai trò là cấu trúc ngữ nghĩa mà xung quanh nó các chính sách truy cập đã đƣợc xác định. Mối quan hệ cơ bản nhất giữa mối quan hệ này là ngƣời dùng và việc gán quyền. Trong RBAC, quyền đƣợc kết hợp với vai trò, ngƣời dùng trở thành thành viên của vai trò, vì vậy họ có các quyền của vai trò đó. Hình 3.1 chỉ ra mối quan hệ giữa ngƣời dùng, vai trò và quyền. Trong hình 3.1 mũi tên hai chiều chỉ ra mối quan hệ nhiều – nhiều . Ví dụ, một ngƣời dùng có thể kết hợp với một hay nhiều vai trò, và một vai trò có thể có một hay nhiều thành viên.
Việc sắp xếp này cung cấp tính linh động và chi tiết cho việc gán quyền đến vai trò và ngƣời dùng đến vai trò. Việc tăng bất kì tính linh động trong điều khiển truy cập đến tài nguyên nào cũng ảnh hƣởng mạnh dến ứng dụng theo nguyên tắc đặc quyền tối thiểu.
Hình 3.1. Mối quan hệ giữa ngƣời dùng, vai trò và quyền.
3.2.1. Hỗ trợ quản lý
Một trong những ƣu điểm lớn nhất của RBAC là khả năng hỗ trợ quản lý. Việc quản lý dữ liệu kiểm soát truy cập đƣợc biết đến rộng rãi nhƣ là một quy trình nặng nề và tiêu tốn chi phí lặp đi lặp lại. Dƣới mô hình RBAC cơ sở, ngƣời dùng đƣợc gán đến những vai trò dựa trên thẩm quyền và trách nhiệm. Việc gán ngƣời dùng có thể dễ dàng đƣợc gỡ bỏ và việc gán vai trò mới trở thành yêu cầu cần thiết cho công việc. Với RBAC, ngƣời dùng không đƣợc gán quyền để thực thi thao tác theo từng các nhân; thay vào đó, quyền đƣợc gán cho vai trò của họ. Vai trò có thể kết hợp với các quyền mới, trong khi các quyền cũ có thể bị xóa khi chức năng của tổ chức đƣợc thay đổi và tiến hóa. Ƣu điểm của khái niệm cơ bản này là làm đơn giản hóa việc hiểu và quản lý quyền: ngƣời quản trị hệ thống có thể cập nhật vai trò mà không cần cập nhật quyền cho mỗi ngƣời dùng theo cá nhân.
Sự thuận tiện nhƣ vậy đƣợc dựa trên quá trình thực tế là việc gán quyền ngƣời dùng dựa trên khái niệm sao chép. Sao chép việc gán quyền đến ngƣời dùng dựa trên việc lặp lại quyền của ngƣời thứ hai từ ngƣời thứ nhất, nếu ngƣời thứ hai có chức năng tƣơng tự trong tổ chức. Việc sao chép này đƣợc tiến hành mà không cần biết quá chi tiết về các quyền đã đƣợc gán cho ngƣời dùng. Mặc dù việc sao chép này là phƣơng thức nhanh và hiệu quả để thiết lập quyền, nhƣng có thể tạo ra những nguy hiểm tiềm tàng.
Một ƣu điểm khác của RBAC là ngƣời quản trị hệ thống có thể xác định yêu cầu truy cập đến tài nguyên tại cùng một mức trừu tƣợng trong quy trình công việc bên trong doanh nghiệp. Dƣới mô hình RBAC, ngƣời quản trị hệ thống tạo ra các vai trò cho nhiều vị trí khác nhau bên trong tổ chức. Ví dụ, một vai trò có thể bao gồm ngƣời thủ quĩ hoặc ngƣời kiểm soát công nợ trong ngân hàng, hoặc bác sĩ, y tá trong bệnh viện. Các quyền đƣợc gán cho một vai trò dựa trên sự ràng buộc thành viên của vai trò đến tập các hoạt động cụ thể. Ví dụ, bên trong bệnh viện, vai trò của bác sĩ có thể bao gồm các quyền để
chẩn đoán, kê đơn thuốc; trong phòng thí nghiệm, vai trò của nhà nghiên cứu có thể giới hạn trong việc truy cập đến các thông tin nặc danh về bệnh án của hồ sơ nghiên cứu.
3.2.2. Quyền truy cập
Trong mô hình hệ thống điều khiển truy cập, ngƣời quản trị hệ thống có thể xem xét các quyền truy cập nhƣ một khái niệm trừu tƣợng liên quan đến việc gán tùy ý các thao tác của máy tính và đối tƣợng tài nguyên, trong hệ thống dựa trên giao dịch, ngƣời quản lý có thể có các qui trình và giá trị để xem xét. Do tính chất này của hành động, có thể xem xét quyền để biểu diễn một đơn vị nhỏ nhất của công việc trong một môi trƣờng máy tính. Tập hợp các quyền đƣợc gán cho một vai trò tạo thành khả năng để thực hiện trách nhiệm, nhiệm vụ, chức năng, hoặc bất kỳ hoạt động nào liên quan đến công việc. Việc gán ngƣời dùng vào vai trò giúp cho ngƣời dùng có khả năng thực hiện những hành động này.
Việc gán các quyền đến vai trò dựa trên chính sách của tổ chức. Việc gán các quyền đƣợc dựa trên các giới hạn chi tiết về phƣơng thức và truy cập. Để hiểu về sự giới hạn trong phƣơng thức, chúng ta sẽ xem xét sự khác nhau trong việc truy cập của thủ quĩ và kế toán trong một ngân hàng. Doanh nghiệp định nghĩa vai trò của thủ quĩ có thể thực hiện thao tác lƣu tiền gửi. Để thực hiện công việc này, thủ quĩ cần có quyền truy cập đến các trƣờng xác định trong tệp tin lƣu. Doanh nghiệp cũng có thể định nghĩa vai trò kế toán cho phép thực hiện các thao tác chỉnh sửa. Những thao tác này cần phải đọc và ghi vào các trƣờng của tệp tên lƣu mà thủ quĩ thực hiện trên đó. Tuy nhiên, kế toán phải không đƣợc phép khởi tạo khoản tiền mà chỉ đƣợc phép chỉnh sửa lại sau khi khoản tiền đƣợc tạo ra. Tƣơng tự nhƣ vậy, ngƣời thủ quĩ không đƣợc phép chỉnh sửa lại giao dịch đã hoàn thành. Hai vai trò này đƣợc phân biệt với nhau bởi các thao tác đƣợc thực thi và giá trị ghi trên tệp tin nhật ký giao dịch.
Để hiểu về tầm quan trọng của giới hạn trong truy cập, chúng ta sẽ xem xét sự cần thiết của dƣợc sĩ khi truy cập đến hồ sơ bệnh nhân để kiểm tra khả năng tƣơng tác giữa các loại thuốc và cần thêm ghi chú vào phần đơn thuốc trong hồ sơ bệnh nhân. Mặc dù các thao tác này là cần thiết, nhƣng dƣợc sĩ sẽ không đƣợc phép đọc hoặc chỉnh sửa các phần khác trong hồ sơ.
Việc gán các quyền đến vai trò cần tuân theo các qui tắc vốn có. Ví dụ, một đơn vị cung cấp dịch vụ chăm sóc sức khỏe sẽ quyết định ràng bộc vai trò của bác sĩ lâm sàng chỉ đƣợc phép thông báo kết quả của các xét nghiệm chắc chắn, không đƣợc phép thông báo rộng rãi vì vi phạm quyền riêng tƣ của bệnh nhân. Việc gán các quyền có thể liên quan đến các qui định pháp luật hoặc sự điều tiết. Ví dụ, một hệ thống có thể ràng buộc y tá khi thêm bản ghi mới vào lịch sử điều trị của bệnh nhân, mà không đƣợc phép chỉnh sửa chung vào bệnh án. Một dƣợc sĩ có thể phân phát thuốc mà không đƣợc kê đơn thuốc.
Có những loại thao tác và đối tƣợng, điều khiển RBAC cần phải phụ thuộc vào loại hệ thống mà chúng đƣợc cài đặt. Ví dụ, trong hệ điều hành, các thao tác có thể là đọc, ghi, hay thực thi; trong hệ quản trị cơ sở dữ liệu, thao tác có thể là thêm mới, xóa, bổ sung và cập nhật bản ghi; trong hệ thống quản lý giao dịch, thao tác có thể dựa trên biểu mẫu và các tính chất của giao dịch. Tập các đối tƣợng trong hệ thống RBAC bao gồm tất cả các đối tƣợng có thể truy cập bởi các thao tác RBAC. Tuy nhiên, đối tƣợng hệ thống có thể không bao gồm trong lƣợc đồ RBAC. Ví dụ, truy cập đến đối tƣợng mức hệ thống nhƣ đối tƣợng đồng bộ hóa (ví dụ: xê-ma-pho, luồng hay thông điệp thành phần) và các đối tƣợng tạm (ví dụ: các tệp tin tạm hay bộ nhớ đệm) có thể không cần thiết phải đƣợc điều khiển trong tập bảo vệ của RBAC. Những đối tƣợng này đã đƣợc hệ thống quản lý tài nguyên của hệ điều hành bảo vệ để đảm bảo các tiến trình đƣợc cô lập và ngăn chặn các tấn công an ninh. Các đối tƣợng RBAC không cần giới hạn về việc chứa thông tin. Các đối tƣợng RBAC có thể là mọi mặt trong tài nguyên hệ thống, nhƣ máy in, đĩa trống hay chu kì của bộ vi xử lý.
Hình 3.2 minh họa cho mối quan hệ đã đƣợc nói đến - cặp quan hệ hai chiều: một là quan hệ giữa thao tác và đối tƣợng, tham chiếu nhƣ quyền truy cập, và mối quan hệ giữa vai trò và quyền truy cập.
Hình 3.2. Các thành phần tĩnh của mô hình RBAC
3.2.3. Vai trò hoạt động
Để nhất quán với rất nhiều loại mô hình, RBAC bao gồm các khái niệm về chủ thể và đối tƣợng. Một cách tổng quát, tính chất và ánh xạ đƣợc định nghĩa trong mô hình RBAC có thể đƣợc chia thành hai phần nhƣng phụ thuộc vào các thành phần động và tĩnh. Thành phần tĩnh là đƣợc định nghĩa trong RBAC là các mối quan hệ không liên quan đến ký hiệu của chủ thể (trong thực tế, thƣờng gọi là phiên làm việc). Để áp dụng chính sách an ninh động vào hệ thống máy tính, chúng ta ký hiệu chủ thể là các thực thể động có thể truy cập đƣợc đến vai trò, thao tác và đối tƣợng. Một chủ thể hoạt động nhƣ một tác nhân đại diện cho ngƣời dùng thực thi tất cả các yêu cầu của ngƣời dùng. Mỗi chủ thể có một
định danh duy nhất, định danh này để xác định chủ thể đó đƣợc xác thực cho một vai trò và có thể hoạt động dƣới vai trò đó. Ngƣời dùng có thể có nhiều chủ thể hoạt động trong cùng một thời điểm. Đặc điểm này hỗ trợ nguyên tắc đặc quyền tối thiểu, khi ngƣời dùng đƣợc gán cho nhiều vai trò, ngƣời dùng đó có thể hoạt động chỉ với tập con các vai trò phù hợp với yêu cầu công việc của họ. Việc giới hạn vai trò có thể hoạt động của chủ thể tức là giới hạn chủ thể đến không gian truy cập đƣợc định nghĩa bởi quyền đƣợc gán cho vai trò.
Thành phần động của RBAC bao gồm vai trò hoạt động và các chủ thể truy cập. Tính chất của RBAC đảm bảo rằng các vai trò động của một chủ thể là tập con của vai trò đƣợc gán cho chủ thể của ngƣời dùng và các vai trò động của một chủ thể đƣợc áp dụng trong việc kiểm tra truy cập đối tƣợng. Bổ sung cho những tính chất này, thành phần động của mô hình RBAC cơ sở định nghĩa hai loại ánh xạ chức năng. Thứ nhất là ánh xạ một chủ thể đến ngƣời dùng xác định, và thứ hai là ánh xạ mỗi chủ thể đến một tập các vai trò hoạt động. Sau đây là định nghĩa hình thức của mô hình RBAC cơ sở.
Định nghĩa 3.1 Mô hình RBAC cơ sở có thể đƣợc định nghĩa nhƣ sau:
- USERS, ROLES, OPS và OBS (kí hiệu cho tập ngƣời dùng, vai trò, thao tác và đối tƣợng)
- , là ánh xạ nhiều – nhiều giữa ngƣời dùng và vai trò
- , ánh xạ của vai trò r đến tập ngƣời dùng.
Hình thức hóa:
- , tập các quyền truy cập.
- , ánh xạ nhiều – nhiều giữa quyền truy cập và vai trò (mối quan hệ giữa vai trò và quyền truy cập)
- , ánh xạ của vai trò r vào tập các
quyền truy cập. Hình thức: - , tập các chủ thể. - , ánh xạ từ chủ thể s đến ngƣời dùng kết hợp với chủ thể. - , ánh xạ từ chủ thể s đến tập các vai trò. Hình thức:
Tính chất 3.1. Ủy quyền vai trò: Một chủ thể không bao giờ có một vai trò hoạt động nếu không đƣợc ủy quyền vai trò đó từ ngƣời dùng.
-
- nếu chủ thể s có thể truy cập đến đối tƣợng o sử dụng phép toán op, bằng 0 trong trƣờng hợp ngƣợc lại.
Tính chất 3.2. Truy cập ủy quyền đối tƣợng: Một chủ thể s có thể thực hiện thao tác op trên đối tƣợng o nếu có một vai trò r trong tập vai trò hoạt động của chủ thể và tồn tại một quyền truy cập đƣợc gán cho r cho phép thực thi thao tác op trên o.
-
Hình 3.3 Tập các ánh xạ động và mối quan hệ tĩnh cần thiết để ngƣời dùng có thể truy cập đến một đối tƣợng.
Hình 3.3 mô tả tập các ánh xạ động và mối quan hệ tĩnh cần thiết để ngƣời dùng có thể truy cập đến một đối tƣợng. Các mũi tên đứt quãng biểu diễn cho các ánh xạ động, và mũi tên liền biểu diễn cho các mối liên hệ tĩnh.
Chƣơng 4
KIỂM CHỨNG TÍNH ĐÚNG ĐẮN TRONG ĐIỀU KHIỂN TRUY CẬP