Проверка одной из нескольких политик с атрибутом Authorize в ASP.NET Core IdentityC#

Место общения программистов C#
Гость
Проверка одной из нескольких политик с атрибутом Authorize в ASP.NET Core Identity

Сообщение Гость »


Я настроил стандартную систему аутентификации в приложении ASP.NET Core.

Пользователи, роли, RoleClaims(действуют как разрешения)

В Startup.cs я создаю политику для каждой роли и каждого разрешения. Предполагая, что это даст мне полную гибкость в моих представлениях, чтобы я мог сказать, что я хочу, чтобы эта кнопка показывала, является ли пользователь частью роли, которая имеет утверждение УдалитьКустомер, или принадлежит ли пользователь роли Суперпользователя.

Как выполнить условие ИЛИ, используя атрибут Authorize. Например, я хочу, чтобы политика SuperuserRole имела полные права на все на моем сайте.

Предположим, что у меня есть метод действия:

[Authorize(Policy = "EditCustomer")] Для этого потребуется, чтобы вошедшему в систему пользователю была назначена роль с утверждением: Edit.Customer, поскольку я создаю политику для утверждения Edit.Customer. Все это работает нормально, но как бы сказать, что я бы хотел, чтобы любой пользователь с ролью суперпользователя имел доступ к методу действия EditCustomer. Суперпользователь находится в базе данных как роль и дополнительно добавляется как политика RequireSuperUser.

Вернуться в «C#»