В нашем веб-API .NET Core мы настроили авторизацию на основе утверждений, и она отлично работает. Мы создали ролевые заявки и назначаем роли пользователям. Мы не используем заявки пользователей.
Теперь у меня есть требование, чтобы у пользователей были конкретные претензии. В UserManager есть метод GetUsersByClaimAsync (Claim), который, кажется, учитывает только заявки пользователей. Не претендует на роль. Так что в моем случае его нельзя использовать.
Итак, я думал о получении ролей по требованию, а затем о получении пользователей по ролям (не очень эффективно, так как для получения пользователей каждой роли отдельно требуется несколько вызовов БД). Но даже для этого не существует прямого метода получения ролей по утверждениям в UserManager или RoleManager.
Мне кажется, что нет чистого способа добиться этого, кроме настраиваемых запросов.
Я не уверен, что мне что-то здесь не хватает. Кто-нибудь добился этого, используя лучший способ?
Спасибо