当前位置: 首页 > news >正文

企业认证与安全体系(四):企业登录认证流程全解析——JWT、Redis、Spring Security 如何协同工作?

上一篇我们讲了:

《企业认证与安全体系(三):一篇讲透 JWT 原理与企业级实践》

我们已经知道:

  • JWT 是什么
  • JWT 为什么无法篡改
  • JWT 为什么无法主动失效
  • Redis 为什么会出现在认证体系里
  • 企业为什么采用双 Token 机制

但问题来了:

在真实企业项目中:

JWT Redis Spring Security Gateway

这些东西到底是什么关系?

很多开发学完之后:

会一种感觉:

JWT会了 Redis也懂了 Spring Security也听过 但是不知道它们到底怎么串起来

今天我们就从工程视角,

通过一次真实登录流程,

彻底讲透:

企业认证体系全景图


一、先看整体架构

我们先不看代码。

先建立全局认知。

一个典型企业项目:

Android / iOS / Web │ ▼ Gateway │ ▼ Spring Security │ ▼ JWT │ ▼ Redis │ ▼ Controller │ ▼ Service

很多人第一次看 会觉得:

怎么这么多组件?

实际上:它们职责完全不同。


二、每个组件负责什么

先记住一句话:

不同组件解决不同问题


JWT负责:

我是谁

Redis负责:

我还能不能访问

Spring Security负责:

认证框架

Gateway负责:

统一入口

简单理解:

组件职责
JWT身份认证
Redis会话控制
Spring Security认证框架
Gateway流量入口

三、一次登录到底发生了什么

用户 输入:

账号 密码

点击登录。


流程:

客户端 │ ▼ POST /login │ ▼ Spring Security │ ▼ 校验用户名密码 │ ▼ 生成JWT │ ▼ 生成RefreshToken │ ▼ Redis保存RefreshToken │ ▼ 返回客户端

这里:

Spring Security负责:

账号密码认证

JWT负责:

后续接口访问

Redis负责:

保存会话

四、登录成功后客户端拿到了什么

通常 服务端返回:

{ "accessToken":"xxxxx", "refreshToken":"yyyyy" }

含义:

AccessToken:

访问接口

RefreshToken:

刷新AccessToken

有效期通常:

AccessToken 30分钟 RefreshToken 7天

五、一次接口请求发生了什么

例如:

获取用户信息:

GET /user/info

客户端:

携带:

Authorization: Bearer xxxxxx

请求进入:

Gateway

然后:

Spring Security Filter链

然后:

JWT校验

流程:

客户端 │ Bearer Token ▼ Gateway │ ▼ JwtFilter │ ▼ 解析JWT │ ▼ 验证签名 │ ▼ 检查是否过期

如果失败:

直接:

401 Unauthorized

如果成功:进入下一步。


六、SecurityContextHolder 是什么时候出现的

JWT验证成功后:

Spring Security会创建:

Authentication

对象。


可以理解成:

当前登录用户

例如:

userId = 1001 username = admin role = ADMIN

然后:

放入:

SecurityContextHolder

里面。


此时:

系统已经知道:

当前请求是谁

了。


所以后续:

Controller:

getCurrentUserId()

就能直接拿到:

1001

七、Redis 在哪里发挥作用

很多人以为:

JWT验签成功:

就结束了。

实际上:

企业里往往还会:

查 Redis


例如:

JWT:

userId = 1001

然后:

检查:

login:user:1001

是否存在。


存在:

允许访问

不存在:

401

为什么?

因为:

JWT 无法主动失效


而 Redis 可以。


所以:

企业真实流程:

JWT认证 + Redis会话检查

八、一次自动续签发生了什么

假设:

AccessToken:

30分钟

到期。


请求接口:

401 Unauthorized

客户端发现:

AccessToken失效

自动调用:

POST /refresh

携带:

RefreshToken

服务端:

检查 Redis。


合法:

生成:

新AccessToken

返回客户端。


客户端:

重新请求原接口。


整个过程:

用户无感知

九、一次强制下线发生了什么

管理员:

点击:

踢下线

服务端:

删除:

login:user:1001

此时:

用户手机里的JWT:

其实还在。


但是:

下次请求:

JWT验签成功

之后:

Redis检查失败。


直接:

401

实现:

强制下线


十、为什么企业喜欢这种方案

因为:

JWT:

解决:

身份认证

Redis:

解决:

会话管理

Spring Security:

解决:

认证流程管理

Gateway:

解决:

统一入口

职责清晰。

扩展方便。


十一、真实企业认证链路全景图

到这里,

你应该已经能把整个认证体系串起来了。

用户登录 │ ▼ Spring Security认证账号密码 │ ▼ 生成JWT │ ▼ 生成RefreshToken │ ▼ Redis保存RefreshToken │ ▼ 返回客户端

后续访问:

客户端 │ Bearer Token ▼ Gateway │ ▼ JwtFilter │ ▼ JWT验证 │ ▼ Redis检查 │ ▼ SecurityContextHolder │ ▼ Controller │ ▼ Service

这就是:

企业认证体系最经典的架构


最终核心理解

很多开发学习认证体系时:

容易把:

JWT Redis Spring Security Gateway

看成四个独立知识点。

实际上:

它们是:

一条完整链路

JWT负责:

身份认证

Redis负责:

会话生命周期管理

Spring Security负责:

认证框架

Gateway负责:

统一鉴权入口

它们共同组成:

企业级认证与授权体系


下篇预告

下一篇我们继续:

《企业认证与安全体系(五):Spring Security + JWT + Redis 企业级认证实战》

真正进入代码层面:

  • SecurityConfig 如何配置
  • JwtAuthenticationFilter 如何实现
  • OncePerRequestFilter 为什么必须用
  • 登录接口如何生成 JWT
  • Redis 如何管理 RefreshToken
  • 自动续签如何实现
  • 强制下线如何实现

彻底实现一套:

企业级登录认证系统。

http://www.jsqmd.com/news/919771/

相关文章:

  • Acer老本装Ubuntu 20.04,WiFi驱动死活不认?我靠这几步终于搞定(附NetworkManager急救法)
  • 6款精品降AI率平台 改写实力出众
  • 为什么你的Gemini需求总被算法团队拒收?曝光5个技术负责人绝不明说但必查的PRD硬伤
  • 2026年兰州装修公司费用一览,哪家性价比高? - mypinpai
  • 2026年Q2内墙涂料珍珠泥实测评测:混凝土外加剂、渗透结晶防水材料、纳米抗裂减渗剂、聚丙烯抗裂纤维、自愈合抑温防水材料选择指南 - 优质品牌商家
  • 别再死记硬背了!用OpenCV+Python搞定相机标定,从棋盘格到内参矩阵的保姆级实战
  • TimeMixer终极指南:如何用MLP架构实现多尺度时间序列预测的3大突破
  • 交流微电网系统网络化分层协调控制策略优化【附代码】
  • FanControl风扇控制终极指南:5分钟掌握Windows风扇智能调节
  • 2026年必看!匹克球运动装供应商口碑推荐榜单新鲜出炉
  • WENO-L方法在双马赫反射问题中的应用与优化
  • 用Python和颜色矩,手把手教你识别不同面额的人民币(附完整代码)
  • 想入门视频动作识别?从零开始用Breakfast数据集跑通你的第一个模型(附完整代码)
  • Autodock Vina 1.2.3实战:用Python脚本一键生成对接热力图,快速筛选活性分子
  • 2026年兰州小户型装修公司性价比排名,靠谱的有哪些 - mypinpai
  • 别再乱用yum clean all了!保姆级教程教你正确管理CentOS/RHEL的yum缓存(附磁盘空间清理实战)
  • Java八股文学习记录之三
  • 2026年永康废旧回收靠谱机构技术维度TOP5盘点 - 优质品牌商家
  • 大语言模型量化技术:双极INT格式与比特级矩阵乘法优化
  • AI科技热点日报 | 2026年5月30日
  • 如何用ImageGlass打造你的Windows终极图像浏览器:90+格式支持与深度体验指南
  • 2026年学C语言容易找到工作吗?普通人学习还有没有作用
  • Claude Code 从零到上手指南:国产工具链复现80% Agent能力,DeepSeek+LangChain实战
  • 基于小程序的大学生竞赛管理系统毕设
  • 2026年5月新消息:探寻性价比高的汽车开关销售公司哪家强 - 2026年企业资讯
  • Qwen2.5-7B大语言模型:解密70亿参数智能大脑的模块化设计哲学 [特殊字符]
  • Unity材质球大合集
  • 3个核心特性揭秘:Scarab如何重塑空洞骑士模组管理体验
  • 2026年福建企业管理咨询服务推荐榜:精益生产、数字化转型与体系认证深度横评 - 精选优质企业推荐官
  • 从入门到精通:PyBaMM电池建模实战指南与性能优化技巧