У меня есть роли сайта, такие как администратор, пользователь, и это нормально.
Но допустим, у меня есть законное заявление (или что-то подобное). У меня есть сущность под названием Case
. Теперь у меня может быть много дел, и не все пользователи должны иметь доступ к какому-либо конкретному случаю. Допустим, Фред и Том должны иметь доступ к Case1, но только Джина и Ребекка должны иметь доступ к Case2?
Довольно просто, верно? У нас есть дела, и пользователи могут принадлежать делу. Это первая часть. Вторая часть состоит в том, как получить «Case Roles», чтобы Фред мог быть «администратором» Case1 и иметь возможность вносить серьезные изменения, но, возможно, Том просто «пользователь» Case1 и может делать только незначительные вещи и иметь только чтение доступ и т. д.
Я знаю, что мне, вероятно, понадобится реализовать собственный атрибут и т. Д., Но я не могу найти в Интернете примеров такого рода вещей. Но я предполагаю, что это должно быть очень распространено в большинстве бизнес-приложений. (например, Basecamp или Highrise и т. д.)
ОБНОВЛЕНИЕ Позвольте мне привести другой пример:
Возьмите программное обеспечение для управления проектами в качестве сервисного приложения, такого как Basecamp. Пользователь может создать «проект». Затем этот пользователь может пригласить других пользователей в свой «проект». Но создатель может назначить разные права для каждого пользователя своему проекту. Основной вопрос заключается в том, как сделать это в ASP.NET MVC.