Introduction
- TKey = Token Key 以 OAuth 2.0 标准为接口设计原则的单点登录系统(SSO)
- 初衷: 做国内各种登录场景的配件,以完善的学习资料为主核心竞争力
- 纯粹的 HTTP,任意设备、任意场景
- 跨域无状态,随意横向扩展,服务高可用
- Spring Boot 2.1.x 技术栈,没有封装,有一点点基础即刻魔改(MIT License)
- 从开发、测试、部署、监控、前后端分离的材料都已具备
- 最后:没有哪个框架、系统可以套用在任意用户、任意场景、任意需求上,希望对你有思路帮助
Git
- Github: https://github.com/cdk8s/tkey
- Gitee: https://gitee.com/cdk8s/tkey
Live Demo
- 注意:带宽只有 1M,访问会慢
- 本地添加下面 hosts 才能正常访问
182.61.44.40 sso.cdk8s.com
- 访问地址: TKey SSO Client Management
Architecture
- 上图的视频讲解稍后会上传到 B 站
- OAuth2.0 授权码模式细节时序图可以查看: 点击我查看
Preview(Gif)
- 主图需要右键复制地址,然后粘贴到地址栏才能打开 Orz..
- 登录完整过程: 主图 、 备图
- Grafana 监控大屏: 主图 、 备图
- GoAccess 监控大屏: 主图 、 备图
- Postman 接口调用: 主图 、 备图
- Docker 容器管理: 主图 、 备图
- Jenkins 部署流水线: 主图 、 备图
- JProfiler 压测变化: 主图 、 备图
- VisualVM 压测变化: 主图 、 备图
Quick Start
- 单元测试: 主图 、 备图
- TKey SSO Server JAR 方式部署过程: 主图 、 备图
- TKey SSO Server Docker Compose: 主图 、 备图
- TKey SSO Client Management Docker Compose: 主图 、 备图
- 项目完全依赖 Lombok(推荐),如果没有用过可以参考 该篇文章
- 项目最优搭配 IntelliJ IDEA,如果还没用过可以参考 该系列文章(我们的作品)
- 由于项目刚开源出来,Maven 官方库还在申请,自己封装的 TKey SSO Client Java 还在审核,目前大家先本地 package install
Documentation
TKey Client
-
Java 前后端分离最佳实践
- TKey SSO Client Management Backend: Github 、 Gitee
- TKey SSO Client Management Frontend: Github 、 Gitee
- Angular、Vue 的前后端分离版本会在稍后几周发出来
- Java REST API 客户端: Github 、 Gitee
- Java Spring Security 客户端: Github 、 Gitee
- C#(暂缺)
- GO(暂缺)
- PHP(暂缺)
- Python(暂缺)
- Ruby(暂缺)
- Node.js(暂缺)
Share
- Grafana Dashboard: Github 、 Gitee
- Postman API: Github 、 Gitee
- Run JAR Shell: Github 、 Gitee
Roadmap
Changelog
Issues
- 目前只开放了一个 issues 入口,集中问题,可以方便大家检索。
- 去提问: Github 、 Gitee
Contributors
Adopters
Sponsors
Backer
Join
- 邮箱:
cdk8s#qq.com
- 博客: https://cdk8s.github.io/
- Github: https://github.com/cdk8s
- Gitee: https://gitee.com/cdk8s
- 公众号
Jobs
cdk8s#qq.com
联系我们
Thanks
Copyright And License
- Copyright (c) CDK8S. All rights reserved.
- Licensed under the MIT license.
- 再次强调: 因为是 MIT 协议,大家有不满意的,除了 PR 也可以 fork 后自己尽情改造!
原文
https://segmentfault.com/a/1190000020210998