SSO Demo

统一登录系统演示入口

一个认证中心,两个独立业务系统,演示单点登录、授权码换 token 和统一退出。

SSO Server

统一登录中心

负责登录认证、中心会话、授权码、token 签发和统一退出。

Client A

React 业务系统

客户端标识为 react,回调地址为 kekezs.cn/sso/react/sso/callback。

Client B

Vue 业务系统

客户端标识为 vue,回调地址为 kekezs.cn/sso/vue/sso/callback。

线上访问地址

演示已经部署到 kekezs.cn,同域下完成授权跳转与 token 交换:

SSO 中心
/sso-api/authorize
React 业务系统
/sso/react/
Vue 业务系统
/sso/vue/

推荐演示路径

  1. 点击“进入 React”,进入 React 业务系统。
  2. 点击“前往 SSO 登录”,使用 admin / admin123 登录。
  3. 回到本页面,点击“进入 Vue”,再点击“前往 SSO 登录”。
  4. Vue 应该不需要重新输入密码,直接完成 SSO 授权并进入系统。
  5. 在 Vue 点击退出,然后刷新 React,React 会发现登录态失效。

核心流程

1. 访问业务系统 React 或 Vue 检查本地 token。
2. 跳转 SSO 携带 client_id、redirect_uri、state。
3. 中心登录 SSO 写入 HttpOnly 会话 cookie。
4. 授权码回调 业务系统用 code 换 access_token。
5. 统一退出 后端撤销同一 session 下所有 token。