Tôi đang tạo ứng dụng MVC có biểu mẫu auth. Tôi đang xác thực đối với thư mục hoạt động và do đó đã tạo ra một RoleProvider tùy chỉnh. Ứng dụng của tôi là chỉ quan tâm đến một nhóm nhỏ các vai trò mà cho đến bây giờ tôi đã được xác định trong phần appSettings của web.config của tôi:Chỉ định vai trò trong web.config của ứng dụng asp.net MVC
<appSettings>
<add key="DirectorRole" value="Domain\Directors" />
<add key="ManagementRole" value="Domain\Managers" />
...
</appSettings>
Tuy nhiên tôi đã chạy vào một vài vấn đề với cách tiếp cận này:
- Tôi không thể tham chiếu các cài đặt này trong chú thích dữ liệu đối tượng của tôi:
[Authorize(Roles = ConfigurationManager.AppSettings["DirectorRole"])]
vì nó không biên dịch vì vậy tôi phải chỉ định lại tên nhóm:[Authorize(Roles = "Domain\\Directors")]
. - Trong web.config của tôi, tôi muốn chỉ định groupsToUse cho nhà cung cấp vai trò của tôi và chỉ tham chiếu danh sách có sẵn, thay vì duy trì hai danh sách riêng biệt của cùng một tập hợp vai trò.
Dường như phải có cách tốt hơn/có thể tái sử dụng để xác định vai trò trong web.config, ai đó có thể chỉ cho tôi đúng hướng không?
Có một vị trí cụ thể trong web.config để đặt danh sách vai trò thay vì chỉ trong phần không? –
James
@james: Tôi không chắc chắn nếu có bất kỳ địa điểm cụ thể nào. Nhưng bạn chắc chắn có thể làm cho một căn phòng cho vai trò của bạn. Hãy xem [tại đây] (http://stackoverflow.com/a/338310/887149) – Mohayemin
@james: Tôi đã cập nhật câu trả lời – Mohayemin