乐趣区

关于java:JAP-v101alpha-发布适配前后端分离的项目

JAP(JustAuthPlus) v1.0.1-alpha 版本已于 2021 年 03 月 05 日 公布。

本版本为预览版本,如果遇到问题,请通过 Issue 告知:

  • https://gitee.com/fujieid/jap…
  • https://github.com/fujieid/ja…

jap-core

新性能

  • 减少 JapErrorCode 枚举类,限定异样码和提醒
  • 减少 JapResponse 类,标准接口返回内容
  • 减少 JapTokenHelper 类,对立治理用户的 Token
  • 减少 JapContext 类,保护 JAP 上下文信息
  • 减少 JapAuthentication 类,对立治理登录状态信息以及 JAP 上下文信息

批改

批改包构造

  • AuthenticateConfig,JapConfig 移到 com.fujieid.jap.core.config 包中
  • JapUtil 移到 com.fujieid.jap.core.util 包中

删除文件

  • 删除 JapCacheContextHolder

批改代码

  • 重构 AbstractJapStrategy,引入上下文 JapContextJapAuthentication
  • 重构 JapConfig 类,仅保留 ssossoConfig 属性,同时减少 tokenExpireTimecacheExpireTime 参数
  • 批改 JapCacheConfig 中的缓存默认有效期为 7 天
  • 批改 JapUserService 接口类中的默认内容
  • JapCache 中增加 void removeKey(String key) 办法
  • JapException 中减少 errorCodeerrorMessage 属性,不便将异样信息处理为对立格局的返回数据
  • JapStrategy 接口中 authenticate 办法的返回类型批改为 JapResponse,所有模块的策略办法都返回对立格局的数据
  • JapUser 中减少 token 属性,登录实现后将主动返回 JAP Token
  • JapUtil 类中为 redirect 办法打上 @Deprecated 标记,将来可能删除。同时减少 createToken 办法

jap-oauth2

  • 批改 Oauth2Strategyauthenticate 办法,对立返回 JapResponse

jap-oidc

  • 批改 OidcStrategyauthenticate 办法,对立返回 JapResponse

jap-simple

  • 批改 SimpleStrategyauthenticate 办法,对立返回 JapResponse

jap-social

  • 批改 SocialStrategyauthenticate 办法,对立返回 JapResponse

jap-sso

  • 批改 JapSsoHelper#login 办法的返回值为以后用户的 JAP Token
  • 新增 JapSsoUtil 类,解决 Token
  • JapSsoConfig 类中,删除 loginUrllogoutUrl 属性

Other

  • 减少一些单元测试

可选 Demo

  • 一般示例我的项目:jap-demo
  • 前后端拆散我的项目示例:jap-demo-vue

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
退出移动版