OpenID Backchannel Logout 不包含 Logout Token

OpenID Backchannel Logout contains no Logout Token

我正在尝试在我的客户端和身份提供者 (Identity Server 4) 中实施单一注销程序。我设法正确设置了一个 Iframe 页面,只要用户注销(从 Identity Server 本身或从客户端注销)就会呈现该页面。这种呈现会触发 endsession 端点的调用,这是 Identity Server 的一种内部机制,它会调用所有已注册 BackChannelLogoutUri 的客户端。我的客户端收到来自 Identity Server 的调用(这是一个 POST 调用)但不幸的是该调用未经过身份验证。

由于未经授权的调用,这导致我的客户端重定向。 同时,我无法真正调试 Identity Server 的 endsession 端点中发生的事情。关于如何进行的任何提示?

您需要在 POST 操作中使用 [AllowAnonymous] 属性,以便在您的客户端应用程序中进行单点退出。在这种情况下,用户不是通过 cookie 进行验证,而是通过 Identity Server 在 POST 调用中传递的 logout_token 进行验证。