Tôi cần triển khai linh hoạt VÀ đơn giản (nếu điều đó tồn tại) và đồng thời sử dụng các phương tiện tích hợp nếu có thể
Cho đến nay tôi đã thực hiện MemberhipProvider và RoleProviders. Điều này thật tuyệt nhưng tôi sẽ đi đâu tiếp theo?
Tôi cảm thấy mình cần thêm thuật ngữ "Đặc quyền" và mã hóa cứng hơn những ứng dụng bên trong ứng dụng. Người dùng sẽ định cấu hình vai trò để thêm Privilidges vào Vai trò và gán Vai trò cho người dùng.
Nghe có vẻ như là một mô hình tốt? Tôi có nên nghĩ về việc thêm các đặc quyền ở cấp độ Người dùng lên trên việc thêm chúng vào Vai trò không? Tôi có thể nhưng tôi hình dung các vấn đề với thiết lập (khó hiểu) và làm theo hỗ trợ.
Nếu tôi không làm điều đó và một số người dùng cụ thể sẽ cần các đặc quyền ít hơn - quản trị viên sẽ phải tạo một vai trò khác, v.v.
Bất kỳ viên đạn bạc cho hệ thống như thế này? Và tại sao Microsoft không đi xa hơn chỉ là nhà cung cấp Thành viên và Vai trò?
Một ý tưởng khác: Rời khỏi vai trò là người nắm giữ "đặc quyền" và mã hóa chúng. Sau đó, tôi có thể mã hóa các vai trò đó trong ứng dụng bằng cách sử dụng tất cả các đánh dấu / thuộc tính có sẵn, v.v. - tất cả Microsoft.
Thêm "Nhóm" thực thể mới và tạo mối quan hệ như thế này
- Người dùng
- Các nhóm người sử dụng
- Các nhóm
- Nhóm vai trò
- Vai trò
Bằng cách này, tôi có thể thu thập các Vai trò thành các nhóm và gán các nhóm đó cho Người dùng. Âm thanh tuyệt vời và phù hợp với các mẫu phần mềm khác. Nhưng sau đó tôi thực sự không thể thực hiện những thứ bên trong RoleProvider như:
- AddUsersToRoles
- RemoveUsersFromRoles
Và một số thứ không thực sự có ý nghĩa nữa bởi vì chúng sẽ được mã hóa cứng
- XóaRole
- Tạo