- JAP 1.0.1 正式發布
- 《JAP產品技術白皮書》正式發布。立即獲取:白皮書
- 添加
com.fujieid.jap.core.util.RequestUtil
- 完成
jap-ids
模塊
jap-ids
是基於 RFC6749、RFC7636、RFC7033等標准協議和 OpenID Connect Core 1.0 認證協議,實現的一款輕量級、業務解耦、開箱即用的新一代國產授權認證框架。
此處附上我精心繪制的jap-ids
業務流程圖:
jap-ids 目前已支持以下功能:
- 授權碼模式(Authorization Code Grant)
- 授權碼-PKCE模式(Proof Key for Code Exchange)
- 隱式授權模式(Implicit Grant)
- 密碼授權模式(Resource Owner Password Credentials Grant)
- 客戶端授權模式(Client Credentials Grant)
- 刷新 access_token
- 回收 access_token
- 獲取當前授權用戶的基本信息
- 校驗登錄狀態
- 異常響應
- 退出登錄
- 服務發現(OpenID Connect Discovery)
- JWK 端點(JWKS)
- JWK 令牌頒發
- 自定義 JWT 加解密證書
- 全場景 response type 支持(
code
、token
、id_token
、id_token token
、code id_token
、code token
、code id_token token
)- 等
關於 jap-ids
的更多使用詳情,請參考示例項目:jap-ids-demo,或者查閱文檔:IDS OAuth 2.0 服務端
- [jap-oidc] 優化
OidcStrategy#authenticate
方法,緩存OidcDiscoveryDto
,減少不必要的 http 請求 - [jap-oidc] 優化
OidcUtil
工具類的代碼,解決一些已知問題 - [jap-social] 解決一些已知問題
- 重構
com.fujieid.jap.core.cache.JapLocalCache
,實現定時器,定期清理本地緩存
- 解決 Gitee Issue #I3DC7N
經過兩個月的整理、修改、迭代,我們 JAP 的技術白皮書,終於完成了!
在 “JAP 社區交流群”中,不少朋友都期待着《JAP 產品技術白皮書》的發布。
前期我們也做過一些調研,大部分開發者/用戶的述求基本上是:JAP 文檔中有太多專有技術名詞,理解起來比較困難。針對此,我們在白皮書中對於 JAP 相關領域的概念、名詞做了專門解釋,能夠幫助開發者/用戶更深入的了解、使用相關技術。
同時,在此份白皮書中,我們對 JAP 的功能、特點、架構、流程等都做了全面的、詳細的解釋,部分內容如下:
希望這份白皮書,能夠幫助到各位開發者/用戶。
JAP 是一款開源的登錄認證中間件,基於模塊化設計,為所有需要登錄認證的 WEB 應用提供一套標准的技術解決方案,開發者可以基於 JAP 適配絕大多數的 WEB 系統(自有系統、聯邦協議)。
- 易用性:JAP 的 API 沿襲 JustAuth 的簡單性,做到了開箱即用的程度。JAP 高度抽象各種登錄場景,提供了多套簡單使用的 API,極大程度的降低了開發者的學習成本和使用成本
- 全面性:JAP 全量適配 JustAuth 支持的第三方平台,實現第三方登錄。同時也支持所有基於標准OAuth2.0 協議或者 OIDC 協議或者 SAML 協議的應用、系統,同時 JAP 還提供不同語言版本的項目 SDK,適配多種研發場景
- 模塊化:JAP 基於模塊化設計開發,針對每一種登錄場景,比如賬號密碼、OAuth、OIDC等,都單獨提供了獨有的模塊化解決方案
- 標准化:JAP 和業務完全解耦,將登錄認證相關的邏輯抽象出一套標准的技術解決方案,針對每一種業務場景,比如用戶登錄、驗證密碼、創建並綁定第三方系統的賬號等,都提供了一套標准的策略或者接口,開發者可以基於 JAP,靈活並方便的完成相關業務邏輯的開發和適配
- 通用性:JAP 不僅可以用到第三方登錄、OAuth授權、OIDC認證等業務場景,還能適配開發者現有的業務系統的普通賬號密碼的登錄場景,基本將所有登錄相關的業務場景都已經涵蓋。針對 WEB 應用,JAP 將提供滿足各種不同登錄場景的解決方案(和開發語言無關)
JAP 適用於所有需要登錄認證功能的場景。比如:
- 要求規范:新項目立項,你們需要研發一套包含登錄、認證的系統,並且從長遠方面考慮,你們需要一套標准的、靈活的、功能全面的登錄認證功能。
- 需求靈活:現有登錄模塊為自研,但是新一輪的技術規划中,你們想將登錄認證模塊重構,以更加靈活的架構適應后面的新需求,比如:集成 MFA 登錄、集成 OAuth 登錄、SAML登錄等。
- 力求省事:你們的項目太多(或者是開發語言較多,比如:Java、Python、Node 等),每個項目都需要登錄認證模塊,想解決這種重復勞動的問題,使研發人員有更多的時間和精力投入到業務開發中,提高研發產能和研發效率。
關於 JAP 的更多內容,可以參考《JAP 產品技術白皮書》
歡迎關注、歡迎收藏、歡迎 star。