【发布时间】:2018-05-31 18:46:01
【问题描述】:
在使用 Azure AD 登录时,我无法从 .Net 核心 Web 应用程序中注销。
当我尝试使用不同的电子邮件登录时,它只是以以前登录的用户身份登录。当新用户尝试登录时,它甚至不要求输入密码。
我尝试了以下方法,但是 -
// Send an OpenID Connect sign-out request.
HttpContext.GetOwinContext().Authentication.SignOut(
OpenIdConnectAuthenticationDefaults.AuthenticationType, CookieAuthenticationDefaults.AuthenticationType);
OR
HttpContext.SignOutAsync(CookieAuthenticationDefaults.AuthenticationScheme);
or
if (HttpContext.User.Identity.IsAuthenticated)
{
await HttpContext.Authentication.SignOutAsync(settings.SignInPolicyId);
await HttpContext.Authentication.SignOutAsync(CookieAuthenticationDefaults.AuthenticationScheme);
}
这些都不适用于 .Net Core。
以下代码在 .net 核心上构建和运行,但不会完全注销用户。
Request.GetOwinContext().Authentication.SignOut(new AuthenticationProperties { RedirectUri = clsCommonFunction.GetLoginURL() });
请帮忙。
【问题讨论】:
标签: azure asp.net-core azure-active-directory asp.net-core-2.0 logout