无法在.Net Core Web App上使用Azure AD身份验证注销

时间:2018-05-31 18:46:02

标签: azure asp.net-core azure-active-directory asp.net-core-2.0 logout

使用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() });

请帮忙。

1 个答案:

答案 0 :(得分:0)

Here ASP.NET Core SignOut 方法。

apply
  

当新用户尝试时,它甚至都没有要求输入密码   登录。

请清除浏览器缓存 Ctrl + F5