第 5 课
JWT 调试流程
排查 JWT 相关 API 失败的实用流程。
当 API 返回 401 Unauthorized 或 403 Forbidden 时,解码 JWT 可以快速缩小问题范围。
先检查形状
确认 Token 有三段,并且没有被复制、代理、header 长度限制或换行截断。
检查时间声明
查看 exp、nbf 和 iat。
- 如果
exp已经过期,需要重新获取 Token。 - 如果
nbf在未来,检查时钟偏差或环境时间是否错误。 - 如果
iat异常,确认客户端是否使用了预期签发方。
检查 issuer 和 audience
对比 iss 与 aud 是否匹配你正在调用的 API。一个常见 OAuth 问题是把 ID Token 当成 Access Token 使用。
检查 scope 和 role
如果认证成功但授权失败,查看 scope、scp、roles、permissions 或身份提供方的等价字段。
回到真实系统验证
解码帮助你找到方向后,要通过真正的后端验证器复现请求。解码器解释 Token;验证器决定是否接受 Token。