钥匙斗篷 |使用 Spring Security 的 OIDC 反向通道(单)注销

Posted

技术标签:

【中文标题】钥匙斗篷 |使用 Spring Security 的 OIDC 反向通道(单)注销【英文标题】:Keycloak | OIDC Backchannel (Single) Logout with Spring Security 【发布时间】:2021-07-21 22:48:49 【问题描述】:

我正在尝试使用 Keycloak 12 和 Spring Security 中引入的反向通道注销来实现单次注销。这个话题似乎真的很新,也不是微不足道的,因为我在网上找不到任何例子。因此,我希望您的专业知识。 以下初始情况:

我有一个带有领域和客户端的 Keycloak 服务器实例(协议:openid-connect | 访问类型:公共)。 Keycloak 和我的 Spring 应用程序都在反向代理之后运行。 我已经成功实现了一次登录。现在我想使用 Spring Security 实现单次注销。这意味着,如果用户在 App1 中按下注销,则所有其他应用中的注销都应该通过反向通道自动发生(应用数量不受限制)。

您能否给我一些有关如何实现此配置的指导。在 Keycloak 客户端中应该输入什么作为“Backchannel Logout URL”?每个应用程序的反向通道注销 URL 都不同。从理论上讲,每个应用程序在登录时都必须指定一个反向通道注销 url。如果我理解正确,那么设置“需要反向通道注销会话”用于此设置,对吗?

【问题讨论】:

【参考方案1】:

Spring Security 尚不支持 OpenID Connect 反向通道注销流程。支持将在未来的版本中添加。你可以在这个GitHub issue关注进度。

【讨论】:

以上是关于钥匙斗篷 |使用 Spring Security 的 OIDC 反向通道(单)注销的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 id 获取其他用户信息(用户名、名字)? [钥匙斗篷]

钥匙斗篷 |如何添加自定义 keycloak 密码策略?

钥匙斗篷。如何更改管理控制台域?

为使用 Spring Security 的应用迁移到 keycloak

无法使用 keycloak 构建基于 spring 的项目进行身份验证

基于 Angular 角色的身份验证密钥斗篷和 Spring Boot