SSO单点登录(三种实现方式)

1、什么是单点登录

单点登录就是用户集群部署的分布式架构下,只需要在某个模块登录后,再去访问其他模块的时候不需要登录验证。

2、单点登录的三种实现方式

(1)session广播机制

实现方式:用户在某个模块登录后,用户信息存在这个模块session中,然后在其他模块进行session复制

缺点:虽然可以实现SSO,但是假如项目有几十个模块,就要复制几十次session,极大的消耗资源资源。

(2)用cookie+redis实现

cookie特点:是一种客户端技术,每次发送请求,带着cookie值进行发送

redis特点:基于key-value进行存储

实现方式:在项目中任何一个模块进行登录,登录之后,把数据放到两个地方:

①redis:在key:生成唯一随机值,在value:存放用户数据

②cookie:把redis里面生成的key值放到cookie里面

访问项目中访问其他模块时,发送请求带着cookie进行发送,获取cookie值,到redis根据key进行查询,如果查询到数据就是 登录,查不到就没有登录。

(3)使用token实现

token是什么:按照一定规则生成的字符串,字符串可以包含用户信息

实现方式:在项目某个模块进行登录,登录之后,按照规则生成字符串,把登录之后用户信息包含到生成的字符串里面,把①字符串通过地址栏返回②把字符串通过cookie返回,再去访问其他模块时,在地址栏带着生成的字符串,在访问模块里面获取地址栏字符串,根据字符串获取用户信息,如果可以获取到就是登录。

私信666领取资料

郑重声明:本文内容及图片均整理自互联网,不代表本站立场,版权归原作者所有,如有侵权请联系管理员(admin#wlmqw.com)删除。
上一篇 2022年6月16日 12:08
下一篇 2022年6月16日 12:08

相关推荐

联系我们

联系邮箱:admin#wlmqw.com
工作时间:周一至周五,10:30-18:30,节假日休息