JAP(JustAuthPlus) v1.0.0 版本已於2021年02月18日正式發佈。
另請周知,JustAuthPlus 的官網已經由 jap.fujieid.com 正式遷移到了新域名 justauth.plus 下。
增加
jap-mfa模塊,實現 TOTP 驗證JapUserStoreContextHolder中增加logout方法,一鍵退出登錄,支持清除 Cookie、Session等- 添加單元測試
修改
- 更新
jap.sh腳本,支持多種常用命令 - 完善註釋
- 刪除
JapConfig中的options屬性,同時在SocialConfig中增加justAuthConfig屬性 - 將
RememberMeDetailsUtils的名稱修改為RememberMeUtils - 將
Oauth2Strategy#checkOauthConfig()和Oauth2Strategy#isCallback()方法移到了Oauth2Util類中
其他
- 改進部分代碼
- 重構
SimpleConfig類,將非必要配置項和業務邏輯,移到工具類RememberMeUtils中
JAP 是什麼?
JAP 是一款開源的登錄中間件,基於模塊化設計,並且與業務高度解耦,使用起來非常靈活,開發者可以毫不費力地將 JAP 集成到任何 web 應用程序中,就像集成 JA 一樣,簡單方便。
JAP 要做的是為所有需要登錄認證的應用提供一套標準的解決方案,集成所有 APP。方便開發者無縫對接任何第三方應用或者自有系統。
- JAP 口號:Just auth into any app!
- JAP 目標:讓身份鏈接無處可藏
- JAP 價值:方便開發者無縫對接任何第三方應用或者自有系統,提高開發效率,減少代碼維護成本
- JAP 願景:以開源的方式,受惠於開源社區,賦能於開發者。使之成為開發者生態內必不可少的“基礎設施”,以期形成新的技術標準。
致開發者:我們要讓開發者可以基於 JAP 開發出自己的 IAM 或者 IDaaS 系統。
JAP 有什麼特點?
- 單點登錄:一處登錄,處處通行
- 開箱即用:API 設計趨近於白話,類似並參考 JustAuth
-
多平台:
- 國內外數十家第三方平台(基於 JustAuth)
- OAuth(OIDC) 協議的平台,內置國內外常見平台
- SAML 協議的平台,內置國內外常見平台
- 業務解耦:JAP 不深入具體的業務,只將授權認證方面的功能抽象出一套標準的組件,方便任意系統快速對接
- 模塊化:JAP 基於模塊開發,基本做到,用哪種引哪種
- 統一標準:一切內置實現或者自定義的實現,都基於標準的策略
- 多語言支持:Java、Python、Go、Node等
適用於哪些場景?
- 新項目立項,你們需要研發一套獨立的、統一的、包含登錄、認證的系統
- 現有登錄模塊為自研,但是新一輪的技術規劃中,你們想將登錄認證模塊重構,以更加靈活的架構適應後面的新需求,比如:集成 MFA 登錄、集成 OAuth 登錄等
- 你們的項目太多,每個項目都需要登錄認證模塊,想解決這種重複勞動的問題
- 從長遠方面考慮,公司或組織或個人需要一套標準的、靈活的、功能全面的登錄認證功能
- 你們不想將研發成本放到登錄認證這種必須但想做完善又需要花費大量時間成本、人力成本的事情上,希望有一箇中間件可以完美集成登錄認證功能,使研發人員有更多的時間和精力投入到業務開發中,提高研發產能和研發效率
- 你們除了需要對接標準的身份提供商外,還有一些非標準的身份提供商,需要投入研發人員單獨定製開發
- 你們企業中用到的開發語言較多,比如:Java、Python、Node等,每種語言對應的系統,都要使用不同語言實現相同的登錄認證功能
- 你們需要研發一個支持 OAuth 登錄的 Web 應用程序
- 你們想讓自己的系統支持對外提供 OAuth 服務
- 你們需要研發一個支持 SAML 登錄的 Web 應用程序,但又苦於 SAML 那龐大而繁瑣的業務流程和配置
- 你們想研發一個支持 LDAP 登錄的程序,但又不知道如何入手
- ...
目前實現的功能
- 實現賬號密碼登錄
- 實現第三方社交帳號登錄
- 實現標準的 OAuth 2.0 應用的授權碼登錄
- 實現 OIDC 應用的登錄
- 支持同源 domain 的單點登錄
感恩有你,歡迎加入 JAP 開發者組織
JAP 開源地址
- github: https://github.com/fujieid/jap
- gitee: https://gitee.com/fujieid/jap