鉴权（Authentication）是指验证用户身份的过程，通常也称为身份认证。在计算机领域中，鉴权是指验证用户是否有系统的访问权限。这个过程通常涉及到用户提供凭据（例如用户名和密码）和系统对凭据进行验证。只有当凭据被验证为有效时，用户才能获得系统访问权限。通俗来说，就像我们乘坐高铁要买票一样，刷票进站的过程就是鉴权。
为了实现鉴权，一种常见的方法是使用会话（Session）机制。由于 HTTP 请求是无状态的，服务端无法得知请求发送者的身份。因此，如果需要记录状态，就需要在服务端创建会话，并将相同客户端的请求都维护在各自的会话记录中。每当请求到达服务端时，先校验请求中的用户标识是否存在于 Session 中，如果有则表示已经认证成功，否则表示认证失败。这种方法的优点是轻量，服务端不用存储，移动端也可以使用。然而，这种方法有一个缺点：一旦派发出去，失效之前都是有效的。虽然可以解决这个问题，但是解决方案类似于 Session 机制。另一个缺点是无法在脱离浏览器的环境中使用，比如原生应用。
另一种常见的鉴权方法是使用令牌（Token）机制。在这种方法中，服务端只负责生成令牌，然后验证令牌。与会话机制不同，令牌机制不需要在服务端创建会话，因此可以更轻松地扩展到多个业务系统分散到不同域名下的情况。令牌通常包含用户信息和过期时间戳，并使用加密算法进行签名，以确保其不会被篡改。当用户进行请求时，客户端将令牌包含在请求中，服务端根据令牌验证用户身份。如果令牌有效，则表示认证成功，否则表示认证失败。令牌机制的优点是可以在多个业务系统中共享，从而实现单点登录（Single Sign-On，SSO）。同时，令牌机制也可以在脱离浏览器的环境中使用。
还有一种常见的令牌机制是 JSON Web Token（JWT）。JWT 是一种开放标准，可以用于在不同系统之间传递信息。JWT 由三个部分组成：头部、载荷和签名。头部通常包含令牌类型和加密算法，载荷通常包含用户信息和过期时间戳。签名是对头部和载荷的加密结果，以确保其不会被篡改。当用户进行请求时，客户端将 JWT 包含在请求中，服务端根据头部和载荷验证签名，并根据过期时间戳验证 JWT 是否有效。如果 JWT 有效，则表示认证成功，否则表示认证失败。JWT 的优点是可以在多个业务系统中共享，从而实现单点登录（SSO）。同时，JWT 也可以在脱离浏览器的环境中使用。
JWT的优点是：
使用base32的解码密钥可以增加token的安全性，因为只有知道密钥的人才能够解码token。