sso单点登录实现方式(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返回,再去访问其他模块时,在地址栏带着生成的字符串,在访问模块里面获取地址栏字符串,根据字符串获取用户信息,如果可以获取到就是登录。

本文链接:https://www.dzdvip.com/33995.html 版权声明:本文内容均来源于互联网。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 395045033@qq.com,一经查实,本站将立刻删除。
(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022年6月13日 23:31
下一篇 2022年6月15日 00:13

相关推荐

发表评论

您的电子邮箱地址不会被公开。