Skip to content

一个基于jwt以及cookie的单点登录—koa2 + mongoDB + mongoose + jwt

Notifications You must be signed in to change notification settings

lkg028/sso-lkg028

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

使用jwt实现单点登录

应用场景

一个一级域名下有多个二级域名,用户在同一个浏览器在同一个一级域名上登录后。同一个浏览器浏览其它同一级域名的应用无需重复认证。

foo.com、a.foo.com、b.foo.com、c.foo.com

实现原理

利用cookie同一个一级域名(domain)下可以共享的特性, 以及jwt把登录态存在用户侧的特点。即可以在下发cookie的时候设置domain为一级域名。这样在访问任意相同一级域名(domain)的应用浏览器均会带上这个泛域名cookie。 另外jwt的实现是把非私密信息存储在token中,并使用密钥进行签名。多个二级域名只需要同步加密密钥,既可以验证token的有效性。

About

一个基于jwt以及cookie的单点登录—koa2 + mongoDB + mongoose + jwt

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages