需要以下4个简单步骤:
注意: jwt token不会上传到服务器,所有的加密解密都在客户端完成。
JWT 是 JSON Web Tokens 的缩写,是最流行的跨域认证解决方案,是一个以 JSON 对象形式在各方之间安全传输信息的开放标准(RFC 7519)。JWT token 由三个基本部分组成:Header、Payload、Signature,Header 部分包括 JWT 类型和使用的签名算法,例如一个使用 HMAC SHA256 算法的 JWT 的 Header 可能如下:
{ "alg": "HS256", "typ": "JWT" }alg 是加密算法,这个 Header 会经过 Base64Url 编码,组成 JWT 的第一部分。Payload 用来存放实际需要传输的数据。JWT 官方规定了 7 个字段可供选择:
Signature 部分是对 Header 和 Payload 的签名,用于验证 JWT 的真实性和完整性。签名的生成过程包括使用指定的签名算法和密钥对 Header 和 Payload 进行加密。此签名将被添加到 JWT 的最后一部分,以确保 JWT 在传输过程中不会被篡改。