Я пытаюсь реализовать аутентификацию на нашем веб-сайте с использованием Azure AD, следуя приведенной ниже ссылке. Наш веб-сайт использует приведенный ниже стек ASP.NET, MVC5, размещенный в IIS. в основном использовать протокол OpenId Connect для проверки подлинности веб-сайта и использовать протокол oAuth2.0 для делегированного доступа для использования токена для авторизации.Аутентификация с использованием OpenId Connect для Azure AD?
https://github.com/AzureADSamples/WebApp-WebAPI-OpenIDConnect-DotNet
Получение токена из Azure логики AD есть в классе Startup.Auth.cs, который вызывается из класса OwinStartup.
Когда я реализую это на нашем сайте, Startup.Auth.cs ConfigureAuth выполняется только один раз во время запуска APP и в соответствии с приведенной выше ссылкой.
Отделка классов контроллера с помощью [Авторизовать] или добавления SignIn() с проверкой подлинности запроса или нет и повторным вызовом кода аутентификации.
public void SignIn()
{
// Send an OpenID Connect sign-in request.
if (!Request.IsAuthenticated)
{
HttpContext.GetOwinContext().Authentication.Challenge(new AuthenticationProperties { RedirectUri = "/" }, OpenIdConnectAuthenticationDefaults.AuthenticationType);
}
}
Вопрос заключается в том, что метод входа в аккаунт() не получает в нашем приложении, а также любопытно на то, что атрибуты [Авторизоваться] делает?
Я высоко ценю любое понимание этих данных. Спасибо большое заблаговременно.
Да, это Azure AD, я обновил его в вопросе. Спасибо за ответ, это помогает. – SteelBird82
О «ASP.NET обеспечит проверку подлинности вызывающего» - выполняет ли он код в обработчике проверки подлинности в приложении Startup.Auth.cs app.UseOpenIdConnectAuthentication (..); Я не вижу этого выполнения при отладке кода. – SteelBird82
Enforce здесь означает проверку, является ли флаг isauthenticated истинным, и начать возвращать 401 в противном случае. Как я уже сказал в ответ, инициализация происходит только один раз. Если есть код, вы подключаете уведомления, которые должны выполняться, но только тогда, когда вы получаете маркер обратно, который позже. – vibronet