API Token API 令牌

Application Programming Interface Token —— 一段加密代码块,带着用户或应用的身份信息,用来告诉 API:“我是谁、我能干什么”。

为什么不直接用密码

用密码用 token
一旦泄露,所有服务沦陷可单独撤销,作用域可控
不好打作用域可设权限(只读、只写某资源)
不好审计可记录每个 token 的调用
改密码要改所有客户端旋转单个 token 即可

常见类型

  • Bearer token —— HTTP 头里带 Authorization: Bearer xxx,谁拿到谁能用
  • JWT —— 自包含,内含 claims 和签名
  • OAuth access token —— 第三方授权场景的标配
  • API key —— 最简单的一种,通常长期有效,需要保护好

安全注意

  • 不要硬编码进代码 —— 写进 .env,加进 .gitignore
  • 作用域最小化 —— 给读权限就不要给写
  • 过期机制 —— 短期 token + refresh token 比永久 token 安全得多
  • 泄露立刻撤销 —— GitHub 等平台会自动扫公开仓库的 token 泄露