栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

【微服务认证之一】统一登录认证

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【微服务认证之一】统一登录认证

首先我们要理解有状态请求和无状态请求。
这里的“状态”的意思是服务器端是否要保存用户状态。
比如说 cookie和session 是有状态的 因为我们要在服务器端保存session的状态()。
而rest API就是无状态 因为我们只需要每次携带JWT进行API call就行了 服务器端只需要验证JWT是否合法 不需要保存任何用户状态。
【注意 服务器端不保存任何用户状态不等于不保存任何信息】

有状态的坏处:
服务器端保存的大量数据。而且对于一个session 只能从头到尾访问同一个服务器 不一样的话就完了。
无状态的好处:
就是有状态的坏处的反面。

但是我们在服务器端不存任何客户端数据 怎么能认定client携带的JWT是对的呢?
因为不储存任何客户的数据并不代表什么都不存储!

在微服务架构中 流程如下:

我们将颁发和验证token交给授权的服务器去干了。
每一次用户携带token 授权中新都会利用public key来阅读token签名 判断有效之后 再从payload中获取用户信息。
所以我们授权中心只需要存一个token+public key处理之后的字符段就行了。一旦验证通过 那么就可以读token中的user info.所以这也是我们服务器端为什么不用存用户信息的原因 因为客户端每次都会带上。

当然 上图也可以是这样 即把验证这一步放在了每个微服务里面。

微服务统一登陆认证怎么做?JWT ?

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/599910.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号