如何管理单点登录中的token(一)

本文介绍了单点登录的概念,通过举例淘宝和天猫的关联应用来阐述。主要讨论了利用Redis的key过期时间管理token的时效性,当Redis的key(token)过期时,通过订阅`__keyevent@0__:expired`事件来感知失效的key,从而实现单点登录的退出机制。文章通过实际操作展示了如何配置Redis和订阅过期key事件。

什么是单点登录呢?

我们拿淘宝和天猫来举个例子吧,他们是两个不同的应用,但是我们在浏 览器中登录过其中的一个网站,在访问另一个网站时,就不再需要我们登陆了。通俗来说就是一系列相关的应用,我们只需要登录其中的一个就可以随心所欲的访问其他的了,不用再忍受每访问一个网站,登陆一次的痛苦了。
还想要了解更详细的介绍,可参考百度百科
单点登录百度百科

单点登录的实现方式

相信大家看过单点登录的概念后,已经有了一个认识,单点登录的实现方式有多重,本文只介绍通过验证token的方式来实现单点登录。像现在大部分的网站,用户登陆成功后5分钟内没有任何操作的话,就会退出登录,需要用户重新登录,本文重点讲解的是关于token的时效性管理。有过redis基础的同学们都知道,redis的可以设置过期时间,这个特性很适合用来管理我们的token。
或许有人会有疑问,redis的key失效了,客户端如何感知那些失效的key呢?
其实在redis.conf文件中有这段配置
<#>Redis can notify Pub/Sub clients about events happening in the key space.
<#>This feature is documented at http://redis.io/topics/notifications
<#>
<#>For instance if keyspace events notification is enabled, and a client
<#>performs a DEL operation on key “foo” stored in the Database 0, two
<#>messages will be publish

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值