首页 > 解决方案 > 带有身份验证/注销的 ADB2C 在 Blazor 中不起作用

问题描述

在 Blazor Webassembly 项目中使用 ADB2C 进行身份验证时,身份验证/注销似乎会注销并显示一个页面,其中包含关闭所有浏览器的请求。无论如何,如果用户只是使用浏览器中的后退按钮,她/他仍然能够访问内容并被视为仍在登录。那么,如何获得真正的注销呢?

标签: azure-ad-b2cblazorblazor-client-side

解决方案


在将用户定向到end_session_endpoint将清除用户使用 Azure AD B2C 的某些单点登录状态时,它不会将用户从用户的社交身份提供程序 (IDP) 会话中注销。如果用户在后续登录期间选择了相同的 IDP,他们将被重新验证,而无需输入他们的凭据。如果用户想要退出您的 B2C 应用程序,并不一定意味着他们希望完全退出他们的 Facebook 帐户。但是,在本地帐户的情况下,用户的会话将正确结束。

要注销用户,请将用户重定向到 OpenID Connect 元数据文档(示例)中列出的 end_session 端点:

GET https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/oauth2/v2.0/logout?post_logout_redirect_uri=https%3A%2F%2Fjwt.ms%2F

参考:Azure Active Directory B2C:使用 OpenID Connect 进行 Web 登录


推荐阅读