SSO是什么
SSO 是 Single Sign-On 单点登录
为了解决一个痛点:
一次登录,多个系统自动登录
没有SSO,用户要记太多密码,每一个服务都要做登录验证逻辑
有了SSO后,后端的服务只需要校验Token认证即可
登录这件事,交给“认证中心”统一做 业务系统只负责信任认证结果

SSO相关的概念
SSO 流程
sequenceDiagram
participant U as 用户浏览器
participant C as 业务系统(FastAPI)
participant I as 认证中心(SSO / IdP)
U->>C: 访问业务页面
C-->>U: 未登录,重定向到认证中心
U->>I: 跳转到登录页
I->>U: 展示登录表单
U->>I: 输入账号密码
I->>I: 验证用户身份
I-->>U: 登录成功,携带 code 重定向回业务系统
U->>C: 带 code 访问回调接口
C->>I: 使用 code 换取 token
I-->>C: 返回 access_token / id_token
C->>I: 使用 token 获取用户信息
I-->>C: 返回用户身份数据
C-->>U: 登录完成,返回业务页面