TKey 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
TKey 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
TKey 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
TKey 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
TKey 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !

软件简介

TKey = Token Key 是一个以 OAuth 2.0 标准为接口设计原则的单点登录系统(SSO)

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

Live Demo

登陆完整过程

(登陆完整过程)

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

Architecture

架构图

(架构图)

Preview(Gif)

Quick Start

  • 单元测试:主图备图
  • TKey SSO Server JAR 方式部署过程:主图备图
  • TKey SSO Server Docker Compose:主图备图
  • TKey SSO Client Management Docker Compose:主图备图
  • 项目完全依赖 Lombok(推荐),如果没有用过可以参考 该篇文章
  • 项目最优搭配 IntelliJ IDEA,如果还没用过可以参考 该系列文章(我们的作品)
  • Maven 中央仓库已经申请下来,大家现在可以直接使用我们自己封装的 REST API 客户端了

Documentation

TKey Client

  • Java 前后端分离最佳实践
    • TKey SSO Client Management Backend:GithubGitee
    • TKey SSO Client Management Frontend:GithubGitee
    • Angular、Vue 的前后端分离版本会在稍后几周发出来
  • Java REST API 客户端:GithubGitee
  • Java Spring Security 客户端:GithubGitee
  • C#(暂缺)
  • GO(暂缺)
  • PHP(暂缺)
  • Python(暂缺)
  • Ruby(暂缺)
  • Node.js(暂缺)
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (33)

加载中
天生反感java,没办法
2020/11/03 10:52
回复
举报
想请教下,你这个其他登录方式实现的思路
2020/08/01 09:24
回复
举报
有建的技术交流群吗
2020/04/22 19:21
回复
举报
请教一下怎么看到 IDaaS 细分赛道哇, 我们是 Authing.cn 创业团队,对标 Auth0
2019/12/21 14:37
回复
举报
赞一个
2019/12/17 11:30
回复
举报
非常喜欢你的项目和风格,希望能尽快建立交流群,一定得坚持下去!
2019/12/03 13:02
回复
举报
跑起来看看
2019/10/11 12:50
回复
举报
下载下源码启动不了,什么原因
2019/10/09 21:52
回复
举报
刚开始报错事redis连接问题而且日志log一直报错
2019/10/09 21:54
回复
举报
CDK8S软件作者
你好,能麻烦下贴一下 log 信息不。 这个网站支持贴代码、文本信息进行分享,可以尝试下:https://pastebin.com/
2019/10/10 21:58
回复
举报
//log.info("=================================Application Startup Success================================="); //log.info("index >> http://sso.cdk8s.com:{}{}", serverPort, serverContextPath); //log.info("actuator-health >> http://sso.cdk8s.com:{}{}/actuator/health", managementPort, managementContextPath); //log.info("actuator-prometheus >> http://sso.cdk8s.com:{}{}/actuator/prometheus", managementPort, managementContextPath); //log.info("=================================Application Startup Success=================================");
2019/10/16 20:26
回复
举报
CDK8S软件作者
你复制代码做啥....
2019/10/17 22:19
回复
举报
就这个log一直报错,是缺少jar包?
2019/10/19 09:01
回复
举报
期待php
2019/09/18 03:03
回复
举报
感谢分享!跟着学习一下!
2019/09/16 18:41
回复
举报
更多评论
暂无内容
发表于大前端专区
2019/09/11 14:32

TKey - 单点登录系统

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

0
2
发表了博客
2019/08/28 12:12

TKey SSO 单点登录系统介绍

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

0
1
发表了博客
2018/03/01 15:32

巧用Dictionary<TKey,TValue>,完成客户需求

前几天与客户沟通一个项目,客户对其中某个模块提了一个需求。 把从数据库中取出的对物品的统计重新拆分重新统计。鉴于用文字不能清除的表达需求,我将该需求画出来,便于理解。 需求如下图: 就是A,B,C D,四种不同的物品原来是组合统计的,现将其拆分开来各自统计。 我刚开始想着是:通过SQL语句,进行逻辑处理,完成该项需求,想了半天,不得要领。 后来看到导师运用:Dictionary<TKey,TValue>完美将这个需求实现,我受益颇深...

0
0
发表了博客
2019/08/01 23:17

【c#集合】Lookup 类 有序字典 SortedDictionary<TKey,TValue> 集

Dictionary<TKey,TValue>类支持每个键关键一个值,Lookup<TKey,TElement>类非常类似于Dictionary<TKey,TValue>类,但把键映射到一个值集合上,这个类在程序集System.Core中实现 用System.Linq名称空间定义。 Lookup<TKey,TElement>类不能像一般的字典那样创建,而必须调用ToLookup()方法,该方法返回一个Lookup<TKey,TElement>对象。ToLookup()方法是一个扩展方法,它可以用于实现IEnumerable<T>接口的所有类。只要有实现IEnumer...

0
0
发表了博客
2020/08/28 10:02

基于C#的Dictionary<Tkey,Tvalue>类的CSV文件读写

基于C#的字典类创建CSV文件读写模块,且本代码暂时只能用于浮点型的逗号文件的创建。 1.核心代码 using System; using System.Collections.Generic; using System.IO; namespace ReadWriteCSV { public class readwriteCSV { public static Dictionary<string,...

0
0
发表了博客
2019/11/14 11:30

C#中数组、集合(ArrayList)、泛型集合List<T>、字典(dictionary<TKey,TValue>)全面对比

C#中数组、集合(ArrayList)、泛型集合List<T>、字典(dictionary<TKey,TValue>)全面对比 为什么把这4个东西放在一起来说,因为c#中的这4个对象都是用来存储数据的集合……。 首先咱们把这4个对象都声明并实例化一下: //数组 string[] m_Str = new string[5]; //集合 ArrayList m_AList = new ArrayList(); //泛型集合 List<int> m_List = new List<int>(); //字典 Dictionary<int, string> m_Dt = new Dictionary<int, strin...

0
0
发表了博客
2019/03/26 22:25

C# System.Collections.Generic.Dictionary

1 using System; 2 using System.Collections.Generic; 3 4 public class Example 5 { 6 public static void Main() 7 { 8 // Create a new dictionary of strings, with string keys. 9 // 10 Dictionary<string, string> openWith = 11 new Dictionary<string, string>(); 12 13 // Add some elements to the dictionary. There are...

0
0
发表了博客
2018/04/10 15:27

整理一下 System.Linq.Enumerable 类中的那些比较少用的方法

Linq 虽然用得多,但是里面有一些方法比较少用,因此整理一下。Enumerable 类的所有方法可以在 MSDN 上查阅到:https://msdn.microsoft.com/zh-cn/library/system.linq.enumerable.aspx Aggregate 这个方法有三个重载,先看第一个 Aggregate<TSource>(IEnumerable<TSource>, Func<TSource, TSource, TSource>) 参数是接受两个 TSource 类型的输入,返回一个 TSource 类型的输出。 按照 MSDN 上的说明,输入的第一个参数是累加...

0
0
发表了博客
2018/03/28 15:03

泛型集合类使用场合概述

在system.collectoins.generic的命名空间中定义了许多泛型接口和集合类 (1) List<T>用法类似于System.collections下的ArrayList类,它可以动态增大或减少容量,它实现了IList<T> IColection<T>接口,这个类还支持其他功能:例如排序 逆序 删除 增加 (2) Dictionary<Tkey,TValue>是存储键值对集合类,实现IDictionary<Tkey,Tvalue> Icllection<KeyValuepair<Tkey,TValue>> ISerializable IDeserialzationvallback接口 (3) Sorted...

0
0
发表了博客
2018/06/15 07:46

C#集合类型大揭秘

集合是.NET FCL(Framework Class Library)的重要组成部分,我们平常撸C#代码时免不了和集合打交道,FCL提供了丰富易用的集合类型,给我们撸码提供了极大的便利。正是因为这种与生俱来的便利性,使得我们对集合既熟悉又陌生。很多同学可能一直还是停留在使用的层面上,那么今天我们一起来深入学习一下C#语言中的各种集合。 首先我们看一下 FCL 给我们提供的集合接口: FCL提供了泛型和非泛型两大类集合类型。因为非泛型集合装箱和...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
33 评论
708 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部