2026-06-09 / C# / .NET Core
JWT 认证与 .NET API Token 校验要点
JWT 校验要关注签名、issuer、audience、过期时间和权限声明,不能把“已签名”误解为“已加密”。
.NETASP.NET Core
JWT 认证与 .NET API Token 校验要点
JWT 常用于 API 身份传递,但它不是安全银弹。已签名不等于已加密,Payload 里的内容默认可以被解码查看。
校验流程
flowchart TD
A["收到 Authorization Header"] --> B["解析 Bearer Token"]
B --> C["验证签名"]
C --> D["验证 issuer / audience"]
D --> E["验证过期时间"]
E --> F["读取 claims"]
F --> G["授权策略判断"]
实际工程场景
网关或 API 服务收到请求后,应先完成 token 校验,再把用户身份和权限声明传给业务逻辑。业务代码不应该自己解析未验证的 token。
常见误区
- Payload 放手机号、密钥等敏感信息。
- 只检查 token 格式,不验证签名。
- 不校验 issuer 和 audience。
- 过期时间过长且没有刷新策略。
最佳实践
- 密钥和算法集中管理。
- claims 最小化。
- 权限判断放在授权层,不散落在业务方法里。
- 对 token 过期、刷新和撤销有明确策略。