Biểu đồ lớp

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu về điều khiển truy cập sử dụng mô hình RBAC mở rộng (Trang 32 - 38)

Chương 2 MỞ RỘNG ĐIỀU KHIỂN TRUY CẬP RBAC VỚI LUẬT

2.4 Khiển khai RBAC mở rộng với luật

2.4.3 Biểu đồ lớp

Biểu đồ lớp cho ta góc nhìn chi tiết hơn về mỗi module.Thông qua các biểu đồ này ta biết được các lớp chính trong mỗi module, quan hệ giữa các lớp trong mỗi module, các thuộc tính, phương thức của mỗi lớp.

2.4.3.1 ClaimMembershipProvider

Hình 2.3: Biểu đồ lớp ClaimMembershipProvider

Lớp/Giao diện Mô tả

IClaimMembershipProvider Định nghĩa các phương thức mà một

ClaimMembershipProvider cần có

ClaimMembershipProvider ngoài việc kế thừa từ MembershipProvider chuẩn, nó còn triển khai giao diện IClaimMembershipProvider, giao diện này định

nghĩa các phương thức đặc thù để làm việc với claim như GetRoles,

GetClaims.

2.4.3.2 Authentication

Hình 2.4: Biểu đồ lớp Authentication

Lớp/Giao diện Mô tả

IAuthenticationManager Đặc tả giao diện mà một Claims based

Authentication cần triển khai

AuthenticationManager Triển khai SignIn, SignOut sử dụng

thông tin người dùng được cung cấp bởi ClaimMembership

Bảng 2.5: Ý nghĩa các giao diện, lớp trong module Authentication

Giao diện IAuthenticationManager đặc tả hai phương thức SignIn và SignOut cho việc đang nhập và đăng xuất. Điểm đặc biệt đối AuthenticationManager khi cài đặt phương thức SignIn là:

- Khởi tạo Thread.CurrentPrincipal là một ClaimsPrincipal với các thông

tin (claim) được truy vấn từ database thông qua

IClaimMembershipProvider. Đối tượng ClaimsPrincipal chứa các thông tin phục vụ cho việc điều khiển truy cập trong module Authorization.

- Khởi tạo một SessionSecurityToken để hạn chế thông tin truyền về

Hình 2.5: Biểu đồ lớp Authorization

Lớp/Giao diện Mô tả

AuthorizationManager Lớp điều khiển truy cập theo Role, mở

rộng bởi luật

ClaimPermission Gọi ClaimsAuthorizationManager để

kiểm tra quyền truy cập

ClaimPermissionAttribute Định nghĩa một Permission Attribute

cho một phương thức, khi phương thức được gọi, một ClaimPermission được tạo ra để kiểm tra quyền truy cập.

Rule Biểu diễn cho một luật

Condition Chứa Expression Tree biểu diễn cho

phần điều kiện (condition) của Rule

RuleCollection Tập các Rule dạng từ điển (Dictionary)

để cho phép truy xuất nhanh đến một Rule theo Id

ResourceAction Lớp chứa cặp thông tin Resource và

Action

Role Lớp biểu diễn cho một vai trò (Role)

RoleCollection Lớp biểu diễn cho một tập các Role

Resources Lớp biểu diễn tập các cặp

<ResourceAction, RoleCollection>

RBACConfiguration Lớp lưu cấu hình điều khiển truy cập

AccessActionEnum Enum định nghĩa 2 action là Allow và

Deny

Bảng 2.6: Ý nghĩa các giao diện, lớp trong module Authorization

Phần lớn các lớp trong biểu đồ này là internal (phục vụ cho cài đặt bên trong module), chỉ có hai lớp public là ClaimPermissionAttribute và ClaimPermission.Hay nói cách khác, ứng dụng chỉ tương tác với module Authorization thông qua hai lớp này.

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu về điều khiển truy cập sử dụng mô hình RBAC mở rộng (Trang 32 - 38)

Tải bản đầy đủ (PDF)

(61 trang)