19 Star 148 Fork 75

monkeyk7 / MyOIDC

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 5.46 KB
一键复制 编辑 原始数据 按行查看 历史

MyOIDC

openid

基于OIDC协议的参考实现,根据各类库提供实现参考.

OIDC(OpenID Connect), 下一代的身份认证授权协议; 当前发布版本1.0;
OIDC是基于OAuth2+OpenID整合的新的认证授权协议; OAuth2是一个授权(authorization)的开放协议, 在全世界得到广泛使用, 但在实际使用中,OAuth2只解决了授权问题, 没有实现认证部分,往往需要添加额外的API来实现认证; 而OpenID呢,是一个认证(authentication )的协议, 二者在实际使用过程中都有其局限性;
综合二者,即是OIDC; 通过OIDC,既能有OAUTH2的功能,也有OpenID的功能; 恰到好处… 查看完整介绍


OIDC 协议

Version: 1.0

英文原版: http://openid.net/specs/openid-connect-core-1_0.html

JSON Web Signature(JWS): https://tools.ietf.org/html/rfc7515

JSON Web Encryption(JWE): http://tools.ietf.org/html/draft-ietf-jose-json-web-encryption

JSON Web Key(JWK): https://tools.ietf.org/html/draft-ietf-jose-json-web-key-41

OIDC相关文章与介绍 http://andaily.com/blog/?s=OIDC


项目介绍

Maven项目, 字符编码: UTF-8; 基于TDD模式与DDD模式设计; 使用SpringBoot实现

使用的框架与版本号
  • JDK (1.8.0_40)

  • SprintBoot (2.5.9)

  • Sprint-Security-OAuth (2.3.8.RELEASE)

  • Sprint-Security-JWT (1.0.9.RELEASE)

  • Jose4j (0.7.1)

  • MySQL (5.7)

模块说明

  • myoidc-server - OpenID Provider[OP] 认证授权服务端

  • myoidc-client - Relying Party[RP] 客户端


功能列表

介绍项目开发的计划与安排, 以及各个功能点

  • 编写各个OIDC实现库的使用DEMO

  • 参考OIDC协议实现具体的流程

  • 项目整体基于spring-oauth-server扩展实现


如何上手

  1. clone或下载项目工程到本地
  2. 查看 How-To-Use.txt 文件(位于 others目录中)内容按步骤操作即可

项目日志

  1. 2016-12-25 项目公开, 完善文档. 添加OIDC 库测试代码 Jose4JTest.java, NimbusJoseJwtTest.java

  2. 2016-07-12 开始尝试翻译OIDC协议为中文

  3. 2017-01-21 加入GitHub https://github.com/monkeyk/MyOIDC, Git@OSC地址 http://gitee.com/mkk/MyOIDC

    (与GitHub同步)
  4. 2018-02-04 开始1.1.0分支, 使用SprintBoot重构, 开始受折磨的技术

  5. 2020-03-10 1.1.0分支继续开发, 包括Endpoint API, 界面流程完善,EU,RP功能开发等; 详细查看文件others/development-log.txt

  6. 2020-04-16 1.1.0分支开发完成, v1.1.1开始分支

  7. 2020-06-03 1.1.1分支开发完成并发布, 开始v1.1.2分支

  8. 2020-09-20 从v1.1.2版本开始团队移到Gitee上进行开发维护, Github上不再更新

  9. 2022-01-27 v1.1.2版本中升级Spring Boot到v2.5.9, spring-security-oauth2到2.3.8.RELEASE; 处理CVE相关漏洞

  10. 2022-08-02 团队加入新成员 changly


相关资源


国内OIDC 实践


拥抱OIDC…
Java
1
https://gitee.com/mkk/MyOIDC.git
git@gitee.com:mkk/MyOIDC.git
mkk
MyOIDC
MyOIDC
master

搜索帮助