Получить текущий поставщик аутентификации в .NET Core - PullRequest
0 голосов
/ 23 октября 2019

У меня есть веб-приложение .NET Core 2.2 MVC, и оно поддерживает 2 типа аутентификации:

  1. Логин / пароль и локальная база данных;
  2. Azure AD.

Мне нужен способ узнать, как аутентифицируется текущий пользователь. До сих пор я мог думать только о проверке значения Issuer самого первого утверждения:

string authType = HttpContext.User.Claims.ElementAt(0).Issuer;

Вот значения, которые я получаю в зависимости от типа аутентификации:

  1. LOCAL AUTHORITY
  2. https://login.microsoftonline.com/TENANT-ID-HERE/v2.0

Так что вроде все работает, но полагаться на первый элемент списка (Claims.ElementAt(0)) мне не очень хорошо.

Есть ли другой способ, что-то вроде HttpContext.User.AuthenticationProvider.Name?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...