认证与会话

446 字

认证与会话

认证回答“你是谁”,会话回答“服务器如何持续记住你”。这两件事一旦薄弱,后面的权限控制都会变得不可靠。

关键概念

概念 说明
账号身份 用户名、手机号、邮箱、第三方登录身份
凭据 密码、验证码、MFA、OAuth 授权结果
会话 Cookie、Session ID、JWT、访问令牌
生命周期 创建、刷新、失效、退出、设备管理

好的认证系统不只检查密码是否正确,还要考虑注册、登录、找回密码、修改密码、绑定手机、注销账号、多设备登录等完整链路。

常见问题

  • 验证码无频率限制、可重复使用、绑定对象不严格。
  • 找回密码 Token 不失效,或者能替换用户标识。
  • 登录失败提示过细,帮助枚举账号是否存在。
  • Session 退出后仍可使用,密码修改后旧设备仍在线。
  • JWT 密钥弱、过期时间过长,或服务端不校验签名和算法。
  • Cookie 缺少 HttpOnlySecureSameSite 等安全属性。

防护要点

认证流程要把“凭据正确、对象正确、时效正确、次数合理”同时满足。会话令牌应随机、不可预测、可失效,敏感操作要二次确认,并保留登录历史、异常地理位置、设备变更等审计线索。

Licensed under CC BY-NC-SA 4.0