【微服务认证之一】统一登录认证
首先我们要理解有状态请求和无状态请求。
这里的“状态”的意思是服务器端是否要保存用户状态。
比如说 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 ?
【微服务认证之一】统一登录认证相关推荐
- 服务架构:统一身份认证和授权技术解决方案
本文讨论的是基于微服务架构下的身份认证和用户授权的技术方案,从背景到微服务架构整套流程分解. 一.预备知识 本文讨论基于微服务架构下的身份认证和用户授权的技术方案,在阅读之前,最好先熟悉并理解以下几个 ...
- 微服务架构下的安全认证与鉴权
微服务架构下的安全认证与鉴权 转载自:https://mp.weixin.qq.com/s/qBJ_257IWn3cctqmKfJ7FQ 作者:王海龙,来自:EAWorld 现任普元云计算架构师,毕业 ...
- 微服务架构下的身份认证
从单体应用架构到分布式应用架构再到微服务架构,应用的安全访问在不断的经受考验.为了适应架构的变化.需求的变化,身份认证与鉴权方案也在不断的变革.面对数十个甚至上百个微服务之间的调用,如何保证高效安全的 ...
- CAS统一登录认证(6):SSO集成架构
cas单点登录架构的形成,理解,实践是个过程,整个实现有一定的复杂,网上的基本架构图如下: 但在实施的时候,并不一定各项技术都需要用到,比如,我的实施整理了一下,是以下改进和简化的架构: 1. 通过L ...
- Linux统一登录认证之 --- 客户端配置
写在前面 本文主要介绍如何通过使用OpenLDAP进行Linux的登录验证, 纯干货 本文环境 Centos 7.5 OpenLdap 2.4.44 部署 安装环境 openldap 安装见Linux ...
- 【统一登录认证】企业微信统一认证系统流程整理 流程图 时序图
[统一登录认证]企业微信统一认证系统流程整理 流程图 / 时序图
- shiro实现APP、web统一登录认证和权限管理
先说下背景,项目包含一个管理系统(web)和门户网站(web),还有一个手机APP(包括Android和IOS),三个系统共用一个后端,在后端使用shiro进行登录认证和权限控制.好的,那么问题来了w ...
- CAS统一登录认证(1):系统安装
这一周在研究cas统一登录认证系统,参考网上大量文章,基本调试可用了,做个笔记. 安装环境:ubuntu16.04 + mysql5.7.23 + java1.8.0_181 + maven3.5 ...
- jwt认证机制优势和原理_微服务统一登录认证怎么做?JWT?
无状态登录原理 1.1.什么是有状态? 有状态服务,即服务端需要记录每次会话的客户端信息,从而识别客户端身份,根据用户身份进行请求的处理,典型的设计如tomcat中的session. 例如登录:用户登 ...
- 微服务统一登录认证怎么做?JWT ?
点击上方"Java知音",选择"置顶公众号" 技术文章第一时间送达! 作者:hongxinerke cnblogs.com/zhenghongxin/p/100 ...
最新文章
- 所谓移动IP是指(58);实现移动IP的关键技术是(59)。【答案】D B
- 【Linux】12.ssh登录服务器一直被拒绝、以及 ssh连接总自己断开 的解决办法
- Kickstart配置文件解析
- OpenCASCADE绘制测试线束:拓扑命令之扫掠Sweeping
- sql 查看Oralce 数据库连接状态
- JAVA常用API或编程工具001---ITEXT把html转换成pdf的jar包,使用Java将HTML转换为PDF
- HDU 1422 重温世界杯
- 求三点外接圆圆心公式
- CCS7.3 安装使用教程
- DH参数例子-SCARA机器人
- 虚拟机vmware中下载安装centos7
- 体力活动水平的计算机软件著作权查询,软件著作权被竞争对手抢先,著作权保护的客体对象是谁?...
- oracle中both,ORACLE:scope=both|memery|spfile
- excel电子表格发展历史
- 浙大翁恺老师C语言教程自学笔录-计算机和编程语言
- python音频频谱_小白音频测试之Python对音频进行频谱分析
- [Vue.js] 一篇超级长的笔记,给《Vue.js 实战》划个重点
- 移动边缘计算(MEC)促进5G发展的分析
- 网络安全应急响应技术实战指南(奇安信)
- Calendar 日历
热门文章
- 在VM VirtualBox的Ubuntu系统中使用github上传文件到仓库过程及遇到的问题
- 水桶服务器1.7.10服务器文件,我的世界1.7.10怎么开水桶服务器
- HTTP 错误 403 - 禁止访问
- php 百度来路关键词,php获取百度搜索关键词的方法[方法过时了]
- 天旦发布“数据驱动决策”实践指南,推进数字化转型
- 苹果手机如何分屏_苹果手机如何剪辑音频
- Blender图解教程:借用雕刻工具来建Lowpoly模型
- 如何解决桌面图标消失/变白
- AT指令(嵌入式+物联网)编程心得C语言
- python游戏~~太空狙击