← AI 百科

身份令牌(Token)

AI编程 · AI编程 / 安全 / 登录
一句话:用户登录成功后,服务器发给客户端的一串凭证,之后每次请求带上这个凭证证明"我是已登录用户",不用每次都重新输入密码。

它是什么

由于HTTP请求默认是无状态的(服务器不会自动记住你上一次是谁),Token机制的作用是:登录成功后服务器生成一个Token给你,之后的每个请求你都带着这个Token,服务器验证Token有效就知道你是谁、有什么权限,不用每次都重新验证账号密码。

适合干什么

  • 需要维持用户登录状态的应用
  • 前后端分离架构下的身份验证
  • 移动端/API调用的身份验证

不适合干什么

  • 完全不需要用户登录概念的公开只读页面

普通人怎么用

登录成功后把服务器返回的Token存起来(比如浏览器的localStorage),之后每次请求在请求头里带上这个Token,服务器就知道是谁在请求。

进阶用户怎么用

Token要设置合理的过期时间,过期后需要重新登录或用刷新令牌(refresh token)机制换取新Token;敏感操作即使Token有效也建议二次验证,不要完全依赖长期有效的Token。

常见误区

  • 把Token存在容易被窃取的地方(比如没有防护的Cookie或者暴露在URL里),存在被盗用的风险
  • Token设置永不过期,一旦泄露风险持续存在,应该设置合理的过期时间并支持主动失效机制

和相似工具的区别

  • 和JWT的区别:JWT是Token的一种具体实现格式(自包含用户信息,服务器不用查数据库就能验证),普通Token可能只是一个随机字符串,需要查数据库/缓存验证有效性

入门步骤

  • 用户登录成功后生成并返回Token
  • 客户端存储Token,之后请求带上
  • 服务器验证Token有效性并识别用户身份