2019 年 10 月 11 日,作者:Stian Thorgersen
Keycloak 的第一個穩定版本可以追溯到 2014 年。如同開發軟體一樣,總有些事情可以做得更好。
透過 Keycloak.X,我們旨在引入一些更大的變革,使 Keycloak 更精簡、更易用且更具未來性。
Keycloak.X 的一些目標是:
這項工作將分為幾個部分:
建立一個由 Quarkus 驅動的新發行版將使我們能夠顯著縮短啟動時間和記憶體佔用。
我們也將能夠建立一個更精簡的發行版,無論在大小或依賴性方面。減少依賴性將進一步減少第三方函式庫中的 CVE 數量。
我們也計劃引入一個正確的 Keycloak 設定檔,我們將直接記錄如何設定 Keycloak 的所有相關內容。在目前基於 WildFly 的發行版中,設定檔非常複雜,因為它包含設定底層應用程式伺服器的所有內容,並且通常需要參考 WildFly 文件才能了解如何正確設定。
目前的儲存層很複雜,尤其是在部署到多個站點時。它存在一些可擴展性問題,例如領域和用戶端的數量。會話僅保留在記憶體中,這對效能來說可能很好,但對於擴展來說不太好,因為您會考慮到大部分會話在大部分時間都是閒置和未使用的。
新的儲存層究竟會是什麼樣子還有待決定,但我們確切知道我們想要:
今天的提供程式存在一些我們想解決的問題,包括:
我們的目標是讓 Keycloak 在持續交付的世界中更容易使用。這應考慮到 Keycloak 升級、自訂提供程式以及配置。
Keycloak 升級應該是無縫的,並且不應該有任何重大變更,而是應有棄用期。
應該可以更輕鬆地管理和重現 Keycloak 的配置,包括不同環境中的領域配置。開發人員應該能夠在開發環境中嘗試一些配置變更,推送到測試環境,然後最終在生產環境中將變更發佈。
我們很樂意收到社群對 Keycloak.X 的幫助。您可以透過程式碼、討論或只是試用並向我們提供回饋來做出貢獻。
需要遷移到 Keycloak.X。事實上,需要多次遷移,因為前面提到的所有內容不會一次完成。
但目標是使這種遷移盡可能簡單且無痛。
我們正從 Quarkus 驅動的發行版開始。目標是在 2019 年底之前擁有一個功能齊全的穩定發行版,但我們已經有一個 原型,您可以嘗試並為之做出貢獻。
在 2020 年,我們的目標是開發儲存層和提供程式。希望在 2020 年底之前,我們將解決大部分甚至所有問題。
我們將繼續並行支援目前的 Keycloak 版本和 Keycloak.X,並在我們最終關閉舊版本之前給大家充足的時間進行遷移。