如何停止登录Azure广告身份验证问您要注销哪个帐户?

时间:2019-05-09 09:25:48

标签: c# authentication asp.net-core azure-active-directory

在我的应用程序中,我使用了AzureAd身份验证,效果很好。 但是当我从AzureAd身份验证中退出应用程序时,每次Mi​​crosoft重定向URL要求

  

您要注销哪个帐户?

SignOut方法是

    [HttpGet]
    public IActionResult SignOut()
    {
        var callbackUrl = Url.Action(nameof(SignedOut), "Account", values: null, protocol: Request.Scheme);
        return SignOut(
            new AuthenticationProperties { RedirectUri = callbackUrl },
            CookieAuthenticationDefaults.AuthenticationScheme,
            OpenIdConnectDefaults.AuthenticationScheme);
    }

SignOut执行时,应用程序被重定向到 https://login.microsoftonline.com/common/oauth2/v2.0/logout?post_logout_redirect_uri .....此登出网址。

但是它询问您要注销哪个帐户?我也只用一个仍然相同的帐户登录,要求注销哪个帐户?

如下所示

enter image description here

我的问题是如何在不询问退出哪个帐户的情况下从天青广告中退出?

这是Microsoft内置的重定向URL还是需要设置任何属性才能阻止它。

2 个答案:

答案 0 :(得分:0)

今天无法避免在v2端点的注销URL上选择帐户。

一个可能的原因是,在Section 5. RP-initiated Logout规范的OpenID Connect Session Management中,我们发现了以下内容:

  

在注销端点,OP应当询问最终用户是否也要注销OP。如果最终用户说“是”,则OP必须注销最终用户。

这可以避免的一件事是恶意应用或网站触发了用户不知道的注销,这是拒绝服务的一种形式。

答案 1 :(得分:0)

您应该看看这个Azure Sample: Signing out。 ASP NET Core中似乎支持一个新事件来处理您描述的情况。对于ASP.NET 4.x完整框架,我找不到类似的事件,但是当您标记NET Core时,请看看!