文章目录
前言
JWT(JSON Web Tokens)是一种开放标准(RFC 7519),它定义了一种紧凑且自包含的方式,用于在网络应用环境间安全地传输信息。这些信息通过数字签名的方式进行编码和验证,以确保信息的真实性和完整性。JWT可以在两个实体之间安全地传输信息,通常用于在用户和服务器之间传输认证和会话信息。
一、JWT 的组成
JWT 通常由三部分组成,这三部分通过点(.)分隔,分别是:
1.Header(头部):头部包含了令牌的元数据,通常是两个字段:typ(类型,通常是JWT)和alg(签名使用的算法,如HMAC SHA256或RSA)。
{
"alg": "HS256",
"typ": "JWT"
}
2.Payload(负载):负载包含了声明(claims)。声明是有关实体(通常是用户)和其他数据的声明。声明有三种类型:注册声明、公共声明和私有声明。
{
"sub": "1234567890",
"name": "John Doe",
"admin": true,