Azure AD B2C 注销问题

Azure AD B2C logout issue

问题总结: msal.logout() 似乎将用户注销,但在“注销”后,用户可以单击“登录”并再次登录,而无需输入用户名和密码。

对于在 public 计算机上登录我们的应用程序的用户来说,这是一个严重的安全问题,然后注销认为他们阻止了某人访问他们的帐户。

Frontend使用的是Angular-msal 1.0.0(Angular-oauth2-oidc也有同样的问题,所以我认为不是js库的问题)。 Azure AD B2C 内置用户流和 xml 自定义策略在使用联合 AAD 租户用户登录时都有此注销问题。

如有任何帮助,我们将不胜感激。 谢谢。

MSAL 库提供 a logout method that clears the cache in browser storage and sends a sign-out request to Azure Active Directory (Azure AD). Request will be done against the end_session_endpoint URL obtained from the B2C policy metadata. Keep in mind single sign out is supported only by custom policies 并且它适用于同一浏览器,而不适用于设备。

以防万一您仍然遇到任何问题,一个想法是使用 &prompt=login 在您的身份验证中重定向 url 将在没有用户会话的情况下撤销您的登录请求。