динамическое сопоставление ролей с контроллерами в ASP.Net MVC
В настоящее время я жестко программирую разрешенные роли в фильтре в моих приложениях MVC, например, так:
[Authorize(Roles = "Administrator,Manager")]
Я хотел бы в конечном итоге иметь способ сопоставить роли каждому контроллеру, чтобы администратор сайта мог обрабатывать назначение ролей для каждого набора действий.
string roles = DoSomethingToGetAllowableRoles(controllerName);
[Authorize(Roles = roles)]
Я представляю, что мне нужна таблица базы данных, в которой каким-то образом хранится список каждого контроллера, а затем еще одна таблица, отображающая контроллеры в роли. Мне нужна страница, на которой я могу перечислить каждый контроллер, а затем установить флажки, в которых перечислены все роли, относящиеся к этому контроллеру.
Кто-нибудь есть пример или может привести меня в направлении, которое будет достигать этого?