В моих контроллерах у меня есть код типа [Authorize(Roles = "Administrators")]
, аннотированный над некоторыми действиями, и я хочу знать, как AuthorizeAttribute
использует параметр Roles (реализация механизма проверки). Моя цель — создать расширение этого класса, например PrivilegeAttribute
, чтобы я мог аннотировать такие действия, как [Privilege(Privileges = "read")]
. В этом классе я бы проверил, имеет ли роль пользователя хотя бы одну из привилегий в этом пользовательском фильтре (в этом примере read
). Я уже создал связь между ролями и привилегиями в коде и в базе данных, и мне нужна помощь, чтобы проверить, связана ли роль с привилегией.
Я пытался посмотреть, есть ли эта информация в HttpContextBase.User.Identity
, но не смог ее найти. Спасибо.