后端与架构

从零设计一套多应用统一登录方案

南客笔记 2026/11/05 987 次浏览

当项目从一个应用变成五六个应用时,登录就成了一件必须统一的事情。这篇笔记记录我们的 OAuth 2.0 授权码方案。

整体结构

  • 认证中心:负责登录页、令牌签发、用户信息
  • 业务应用:注册为 OAuth 客户端,拿到 clientId / clientSecret
  • API 服务:校验令牌,返回受保护资源

授权码流程

  1. 应用跳转到认证中心,携带 clientId 与回调地址
  2. 用户在认证中心完成登录,回跳时带回授权码
  3. 应用用授权码换取访问令牌
  4. 之后请求携带令牌访问 API

几个实践细节

回调地址必须白名单校验;授权码一次有效且有效期很短;刷新令牌需要轮换,旧令牌立即失效。

统一登录的难点不在协议,而在各应用对「会话」的理解不一致。

落地之后,新增一个应用的接入成本从两天降到半小时,这大概是最直观的收益。

相关文章