2023 年 3 月 29 日 作者:Stian Thorgersen
在 2022 年,我们宣布了弃用 Keycloak 适配器,并计划在 Keycloak 19 中停止交付大多数适配器。
由于我们未能就寻找替代方案和支持材料以帮助从 Keycloak 适配器迁移方面取得充分进展,我们正在延长 Keycloak 适配器的生命周期。
未来的计划仍然是最终停止交付定制的 Keycloak 适配器,但我们将以比之前制定的计划更渐进的方式进行。
我们仍然坚信,从长远来看,通过更加专注于 Keycloak 服务器,使其完全符合并支持 OAuth 2.0 和 OpenID Connect 等规范,并增加对规范的额外相关扩展的支持,将更好地为整个社区服务。
我们还认为,通过将各种编程语言和框架的集成留给相关的社区,最终结果将是更广泛的支持,具有更多的特性和功能,并且最重要的是更好的集成和易用性。
对于 Java 应用程序,现在比以往任何时候都更广泛地支持 OpenID Connect,其中一些例子包括
Jakarta Security 3.0 - Jakarta EE 10 中的 OpenID Connect 支持
Elytron OIDC - WildFly 中的 OpenID Connect 支持
Quarkus OIDC - Quarkus 应用程序的 OpenID Connect 支持
Spring Security - Spring 中的 OAuth 和 OpenID Connect 支持
Pac4j - 用于保护您的所有 Web 应用程序和 Web 服务的 Java 安全框架
尽管这些都不支持 Keycloak 授权服务,但这正是我们计划为授权服务引入通用 Java 客户端库的原因,该库可以与其他 OpenID Connect 客户端库一起使用。预计将在 Keycloak 22 中交付。
Keycloak Java 适配器将在一段时间内保留,至少到今年年底,但很可能要到 2024 年初才会移除。与此同时,不要期望适配器在添加新功能、增强功能或支持较新版本的 Tomcat、Jetty、WildFly 或 Spring 方面进行更新。
我们仍在调查 Node.js 的替代方案,因此尚未提供针对这些方案的计划。预计今年晚些时候会发布更多信息。无论替代方案是什么,我们都将为 Node.js 提供 Keycloak 授权服务支持。
Keycloak Node.js 适配器将保留,至少到今年年底,但很可能要到 2024 年初才会移除。
目前,Keycloak 客户端 JavaScript 适配器仍然保留,但我们正在研究替代方案,以及彻底改造我们当前的适配器并继续维护和交付此适配器的潜力。
我们计划在长期内继续支持 WildFly 和 JBoss EAP 的 SAML 2.0,但对 Tomcat 和 Jetty 的支持很可能相对较快地被移除。