TKey SSO 单点登录系统介绍

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 项目的所有文档,方便大家查看

    • Github:https://github.com/cdk8s/tkey...
    • Gitee:https://gitee.com/cdk8s/tkey-...
    • Gitbook:https://160668873.gitbook.io/...
  • 认识阶段 (必读)

    • 单点登录系统认知与基础介绍:Github、Gitee
    • 故意设计点(常见问题):Github、Gitee
    • 项目结构与端口占用:Github、Gitee
    • OAuth2.0 四种模式:Github、Gitee
    • JAR 方式部署:Github、Gitee
    • Docker 方式部署:Github、Gitee
    • Docker Compose 方式部署:Github、Gitee
  • TKey Server 开发阶段

    • 开发改造引导:Github、Gitee
  • TKey Management 开发阶段(也是前后端分离的最佳实践示例)

    • 后端开发改造引导:Github、Gitee
    • 前端开发改造引导:Github、Gitee
  • TKey Client Java 开发阶段

    • 自己封装的 REST Client:Github、Gitee
    • Spring Security 支持:Github、Gitee
  • 测试阶段

    • 单元测试:Github、Gitee
    • 压力测试:Github、Gitee
  • 部署阶段

    • 生产注意事项:Github、Gitee
    • 部署环境搭建:Github、Gitee
  • 监控阶段

    • Spring Boot Micrometer:Github、Gitee
    • 其他工具全在 部署环境搭建,请自行查看
  • 线上问题诊断

    • Actuator 在线修改 log 输出级别(Gif 动图)
    • Arthas 诊断 Docker 应用
    • 夜间开放端口,挑选流量远程 Debug:Github、Gitee

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

  • 规划版本:Github、Gitee

Changelog

  • 版本更新:Github、Gitee

Issues

  • 目前只开放了一个 issues 入口,集中问题,可以方便大家检索。
  • 去提问:Github、Gitee

Contributors

  • 暂无
  • 欢迎 pull request

Adopters

  • 去申请:Github、Gitee

Sponsors

  • 暂无

Backer

  • 我要喝喜茶 Orz..

Join

  • 邮箱:cdk8s#qq.com
  • 博客:https://cdk8s.github.io/
  • Github:https://github.com/cdk8s
  • Gitee:https://gitee.com/cdk8s
  • 公众号

Jobs

  • 我们在广州
  • 有广州或深圳的合作、Offer 欢迎联系我们
  • 邮箱:cdk8s#qq.com
  • 公众号:联系我们

Thanks

  • IntelliJ IDEA
  • CAS
  • Okta

Copyright And License

  • Copyright (c) CDK8S. All rights reserved.
  • Licensed under the MIT license.
  • 再次强调: 因为是 MIT 协议,大家有不满意的,除了 PR 也可以 fork 后自己尽情改造!

你可能感兴趣的:(sso,react.js,java)