TKey SSO 单点登录系统介绍

Introduction

  • TKey = Token KeyOAuth 2.0 标准为接口设计原则的单点登录系统(SSO)
  • 初衷: 做国内各种登录场景的配件,以完善的学习资料为主核心竞争力
  • 纯粹的 HTTP,任意设备、任意场景
  • 跨域无状态,随意横向扩展,服务高可用
  • Spring Boot 2.1.x 技术栈,没有封装,有一点点基础即刻魔改(MIT License)
  • 开发测试部署、监控、前后端分离的材料都已具备
  • 最后:没有哪个框架、系统可以套用在任意用户、任意场景、任意需求上,希望对你有思路帮助

Git

Live Demo

TKey SSO 单点登录系统介绍

  • 注意:带宽只有 1M,访问会慢
  • 本地添加下面 hosts 才能正常访问
182.61.44.40 sso.cdk8s.com
  • 访问地址: TKey SSO Client Management

Architecture

TKey SSO 单点登录系统介绍

  • 上图的视频讲解稍后会上传到 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 开发阶段

  • 测试阶段

    • 单元测试: 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
  • 公众号

TKey SSO 单点登录系统介绍

Jobs

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 后自己尽情改造!

原文 

https://segmentfault.com/a/1190000020210998

本站部分文章源于互联网,本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供。如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。

PS:推荐一个微信公众号: askHarries 或者qq群:474807195,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

转载请注明原文出处:Harries Blog™ » TKey SSO 单点登录系统介绍

赞 (0)
分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址