領先一步
VMware 提供培訓和認證,助您加速進步。
瞭解更多我很高興宣佈推出 Spring Authorization Server 專案。這是一個由 Spring Security 團隊領導的社群驅動專案,專注於為 Spring 社群提供 授權伺服器 支援。
我們走到今天的故事很長,但關鍵資訊簡短而甜蜜:如果沒有我們出色的社群,Spring 就不會是今天的樣子。
大約十年前,我們引入了一個社群驅動的開源專案 Spring Security OAuth,並使其成為 Spring 專案組合的一部分。自成立以來,它已發展成為一個成熟的專案,支援 OAuth 規範的很大一部分,包括資源伺服器、客戶端、登入和授權伺服器。毫無疑問,它已成為 UAA 的基礎,UAA 除其他功能外,還充當所有 Cloud Foundry 安裝的身份管理服務。Spring Security OAuth 專案已成為一個典範專案,證明了我們出色的社群能夠取得的成就。
自專案啟動以來,OAuth 世界發生了巨大變化。因此,我們決定在社群成功的基礎上,重寫 Spring Security OAuth,以更好地協調 Spring 的 OAuth 故事,簡化程式碼庫,並使 Spring 的 OAuth 支援更靈活。
首先,最初的 OAuth 支援很早就完成了,無法預見到它將來需要以所有不同的方式使用。這導致許多 Spring 專案提供自己的 OAuth 支援。透過重寫,我們能夠滿足整個 Spring 組合的需求,並提供一個統一的 OAuth 庫。
其次,當最初編寫 OAuth 專案時,它包含了對 OAuth 1.0 和 OAuth 2.0 的支援。從那時起,OAuth 2.0 已正式使 OAuth 1.0 過時。因此,新的支援能夠完全專注於 OAuth 2.0,這大大簡化了程式碼。
第三,原始專案提供了所有自己的庫支援。現在,有了許多可供選擇的庫,我們能夠透過圍繞現有庫 Nimbus 提供抽象來將其融入 Spring Security 本身。透過在 Nimbus 的基礎上構建,我們能夠更快地行動並新增更多功能,例如更好地支援 JWT 宣告、OIDC、響應式程式設計等等。
社群不斷在過去的成功基礎上再接再厲,這令人印象深刻。
顯然,重寫 Spring Security 的 OAuth 支援是一項艱鉅的任務。首先,團隊決定將工作分為客戶端、資源伺服器和授權伺服器。隨著客戶端和資源伺服器的進展,我們越來越堅信不應該提供授權伺服器支援。
自 Spring Security OAuth 專案建立以來,授權伺服器的選擇數量顯著增加。此外,我們不覺得建立授權伺服器是一個常見的場景。我們也不覺得在一個沒有庫支援的框架中提供授權支援是合適的。經過仔細考慮,Spring Security 團隊決定 不正式支援建立授權伺服器。
自我們的部落格文章釋出以來,社群已發聲,我們也聽取了意見。從部落格上的反饋、Gitter 中的聊天和 GitHub 中的評論來看,我們收到了一個一致的資訊:Spring 生態系統需要授權伺服器的支援。
直到現在,Spring Authorization Server 還只是一個想法。現在,我們正式推出 Spring Authorization Server,作為一個由 Spring Security 團隊領導的社群驅動專案。
該專案將作為 Spring 實驗專案中的一個獨立專案啟動,以便更快地發展。在您的幫助下,該專案將像最初的 Spring Security OAuth 專案一樣成長。
我們非常樂意邀請您加入我們。如果您想參與其中,請閱讀 CONTRIBUTING 文件。我們迫不及待地想聽到您的聲音,一如既往,感謝您成為 Spring 社群的一員!