系列文章目录
第一章 Java线程池技术应用
第二章 CountDownLatch和Semaphone的应用
第三章 Spring Cloud 简介
第四章 Spring Cloud Netflix 之 Eureka
第五章 Spring Cloud Netflix 之 Ribbon
第六章 Spring Cloud 之 OpenFeign
第七章 Spring Cloud 之 GateWay
第八章 Spring Cloud Netflix 之 Hystrix
第九章 代码管理gitlab 使用
第十章 SpringCloud Alibaba 之 Nacos discovery
第十一章 SpringCloud Alibaba 之 Nacos Config
第十二章 Spring Cloud Alibaba 之 Sentinel
第十三章 JWT

前言
JSON Web Token(JWT)是目前最流行的跨域身份验证解决方案。JWT是一个开放标准(RFC 7519)定义的方式,用于在网络之间安全地传输信息。JWT是一个紧凑的,URL安全的手段,表示在双方之间转让的声明。这些声明可以被验证和信任,因为它们是数字签名的。JWT可以使用秘密(使用HMAC算法)或使用RSA或ECDSA公钥/私钥对对进行签名。
1、概念
- 基于JSON的开发标准
- 用户信息加密到token里,服务器不保存任何用户信息
2、与Cookie/session的对比
- 在传统的用户登录认证中,因为http是无状态的,所以都是采用session方式。用户登录成功,服务端会保证一个session,当然会给客户端一个sessionId,客户端会把sessionId保存在cookie中,每次请求都会携带这个sessionId。
- JWT方式校验方式更加简单便捷化,无需通过redis缓存,而是直接根据token取出保存的用户信息,以及对token可用性校验,单点登录,验证token更为简单。
3、JWT构成与交互流程
第一部分为头部(header),第二部分我们称其为载荷(payload),第三部分是签证(signature)。【中间用 . 分隔】
一个标准的JWT生成的token格式如下:eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMi
本文详细介绍了如何在Spring Boot中整合JWT,包括JWT的概念、与Cookie/session的区别、JWT的构成和交互流程,以及在Spring Boot中实现JWT的步骤,如添加依赖、配置和过滤器改造。同时,文中也提到了JWT的缺点,强调了在处理敏感信息时的安全注意事项。
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



