. NET Идентификация пользователя аутентифицирована на сайтах - PullRequest
0 голосов
/ 17 июня 2020

Я пытаюсь использовать Azure AD для аутентификации пользователей в нашем. NET веб-приложении.

Я выполнил следующие инструкции: https://github.com/Azure-Samples/active-directory-aspnetcore-webapp-openidconnect-v2/tree/master/1-WebApp-OIDC/1-2-AnyOrg

Теперь у меня есть веб-приложение. NET Core 3.1, которое аутентифицирует пользователя в Azure AD. Но дело в том, что затем он должен перенаправить пользователя в наше основное веб-приложение, которое написано на. NET Framework 4.5.2 с уже аутентифицированным пользователем, а это не работает.

В. NET Веб-приложение Core 3.1, я создал этот метод:

        [HttpGet]
        [HttpPost]
        public IActionResult AzureLogin()
        {
            if (!User.Identity.IsAuthenticated)
            {
                return Challenge(new AuthenticationProperties() { RedirectUri = "/Test/Test" }, "OpenIdConnect");
            }
            else
            {
                return View("~/Home/Index.cshtml");
            }
        }

Этот «/ Test / Test» является еще одним методом, который перенаправляет пользователя в основное приложение:

        public IActionResult Test()
        {
            return Redirect("http://localhost:5000/Login/Login");
        }

Главное приложение (которое находится на той же машине, но как другой процесс и на другом порту) затем имеет проверку if (this.HttpContext.User?.Identity?.IsAuthenticated != false) в методе входа в систему. Эта проверка всегда возвращает, что пользователь не аутентифицирован, даже если приложение входа Azure AD сообщает, что пользователь аутентифицирован.

Возможно ли каким-то образом передать аутентифицированную личность через перенаправление?

...