JWT 基础使用教程
JWT 的概述
JWT(JSON Web Token)是目前最流行的跨域身份验证解决方案。
传统的身份验证
- 用户向服务器发送用户名和密码
- 验证服务器后,相关数据(如用户角色,登录时间等)将保存在当前会话中
- 服务器向用户返回
session_id,Session 信息都会写入到用户的 Cookie 中 - 用户的每个后续请求都将通过在 Cookie 中取出
session_id并传递给服务器 - 服务器收到
session_id并对比之前保存的数据,确认用户的身份
这种模式最大的问题是,没有分布式架构,无法支持横向扩展。如果使用一个服务器,该模式完全没有问题。但是,如果它是服务器群集或面向服务的跨域体系结构的话,则需要一个统一的 Session 数据库(Redis)来保存会话数据实现共享,如果保存 Session 的数据库(Redis)挂掉,整个认证体系都会挂掉。
