Keycloakアダプターの非推奨化

2022年2月4日 Stian Thorgersen 著

2013年にKeycloakプロジェクトを開始した当初は、開発者がKeycloakでアプリケーションをセキュアにするためのクライアントライブラリが不足していました。現在に目を向けると、OAuth 2.0とOpenID Connectライブラリが広く普及している状況に大きく変化しました。

さらに、Keycloakアダプターは必要な愛情と注意を払われておらず、サーバーの機能サポートにおいて大幅に遅れをとっています。Keycloakはプログラミング言語やフレームワークに関係なく、あらゆるアプリケーションをセキュアにするために使用できますが、アダプターはJava開発者向けに限定されていました。

リソースを分散させ続けるのではなく、アダプターを非推奨とし、Keycloakサーバーにさらに注力していきます。さらに、様々なアプリケーションをセキュアにする方法について、入門ガイドの提供や、Keycloakアダプターに代わるより良い選択肢だと考えるものを推奨することで、皆様を支援することを目指しています。

非推奨となるもの

非推奨とならないもの

代替案

WildFly

WildFly 25では、Keycloakアダプターのすべての機能に加えて、さらに多くの機能を備えたOpenID Connectのネイティブサポートが導入されました。WildFlyネイティブOpenID Connectへの移行は、WildFlyチームが可能な限り簡単な移行となるよう細心の注意を払っているため、非常に簡単です。

詳細については、Farah Jumaによる素晴らしいブログ記事をご覧ください。

Spring

Spring Securityは、長年にわたりOAuth 2.0とOpenID Connectの優れたサポートを提供してきました。KeycloakアダプターからSpring Securityへの移行は容易ではありませんが、移行することでより多くの機能、より適切にメンテナンスされたライブラリ、そしてSpringとのより良い統合が得られることをご理解いただければ幸いです。

詳細については、Ger Rozaによる素晴らしいブログ記事をご覧ください。

Quarkus

Quarkusは既存のKeycloakアダプターの直接的な代替品ではありませんが、QuarkusにはOpenID ConnectとKeycloakの非常に広範な組み込みサポートがあり、さらに多くの追加メリットがあることは強調する価値があります。

詳細については、Quarkusセキュリティガイドをご覧ください。

Node.js

Node.jsアプリケーションに最適な候補をまだ検討中ですが、openid-clientはKeycloakアダプターよりもはるかに機能豊富な優れた代替手段となるようです。

タイムライン

  • 2022年2月: アダプターの非推奨化

  • 2022年9月: アダプターのメジャー/マイナーリリースは終了

  • 2022年12月: アダプターのマイクロリリースは終了

議論

ご質問、ご懸念、ご提案などございましたら、GitHub Discussionsを通じてこのトピックについてご参加ください。

コミュニティ

コミュニティのどなたかで、非推奨となるKeycloakアダプターのメンテナンスを継続していただける方がいらっしゃいましたら、開発者メーリングリストを通じてご連絡ください。

また、皆様にとって最適な代替案を見つけるためのご提案やご協力、入門ガイドや移行ガイドなどのご提供も歓迎いたします。この点にご協力いただける方は、GitHub Discussionsでの議論にご参加ください。

延長サポート

2022年末までにKeycloakアダプターからの移行が難しい場合は、Red Hatからのサポートを受けることを検討するのも一つの選択肢です。

Red Hatは、Red Hat Single Sign-On 7.xを通じてサポート対象のアダプターを提供しており、これは現在2024年6月30日までサポートされています。

Red Hat Single Sign-Onでサポートされているアダプターには以下が含まれます

  • JBoss EAP

  • Node.js

  • Javaサーブレットフィルター

  • JBoss Fuse

  • Spring Boot