Двойная проверка подлинности OWIN в ASP.Net - как предотвратить перенаправление на AzureAD-вход для не-AD-пользователей - PullRequest
0 голосов
/ 30 ноября 2018

У нас есть .NET 4.7.2 MVC веб-сайт, на котором мы реализовали двойную authentication - against AzureAD using OpenIdConnect и стандартную проверку подлинности приложения cookie для пользователей, не являющихся пользователями AD.

AD-пользователи перенаправлены на Microsoft, и у нас есть пользовательский login page для non-AD-users.

Наша проблема в том, что когда мы авторизируемся на нашей пользовательской странице входа в систему, используя AuthenticationManager.SignIn, пользователь все равно перенаправляется на Microsoft login.

Мне удалось исправить это, добавив следующее в RedirectToIdentityProvider-func в конфигурации OpenIdConnect в Startup.cs:

if (context.Request.Path.ToString().Contains("login"))
{
    context.HandleResponse();
}

Но это похоже на уродливый хак.Как правильно решить эту проблему?

...