【springboot+vue项目(十四)】基于Oauth2的SSO单点登录(一)整体流程介绍

场景:现在有一个前后端分离的系统,前端框架使用vue-element-template,后端框架使用springboot+springSecurity+JWT+Redis(登录部分)现在需要接入到已经存在的第三方基于oauth2.0的非标准接口统一认证系统。
温馨提示:如果是接入到基于oauth2.0的标准接口的认证服务系统,可以直接使用spring-boot-starter-oauth2-client)参考:超级简单的springboot整合springsecurity oauth2第三方登录_spring-boot-starter-oauth2-client 实现登出-CSDN博客

整体的流程大概为:

  1. 用户请求访问应用系统的前端。
  2. 重定向到应用系统的后端。
  3. 应用系统后端将认证请求发送到认证服务器,认证服务器判断是否认证,如果没有认证过,则重定向到认证登录页面进行统一认证。
  4. 认证成功后,重定向到应用系统后端指定URL,并返回code。
  5. 应用系统后端根据返回的code请求认证服务器获取access_token和refresh_token。
  6. 应用系统根据返回的access_token请求认证服务器获取用户信息。
  7. 应用系统的后端根据用户信息生成token返回前端,
  8. 应用系统前端接受token并持久化,调用userinfo请求后端 接口,获取用户信息
  9. 后端验证解析token,将用户信息返回前端。
  10. 登录到应用系统主页。
    温馨提示:此过程为大概流程,后面将分前端和后端部分详细介绍如何 改造原项目。
相关推荐
PedroQue996 小时前
V1.6.1性能优化:高频路径提速与代码精简
前端·uni-app
猩猩程序员7 小时前
将 LiteLLM 迁移到 Rust —— 构建最快、最轻量的 AI Gateway
前端
lichenyang4537 小时前
JSBridge 分发升级:为什么要从 if-else 变成 Registry > 这是「ASCF 架构升级」系列的第 3 篇
前端
码上天下7 小时前
流式响应断了,前端怎么自动重连续传
前端
anyup7 小时前
来简单聊聊鸿蒙开发,万元奖金的事~
前端·华为·harmonyos
北凉温华7 小时前
Univer 在线表格模块使用说明
前端
lichenyang4537 小时前
WebRuntimePage 拆分:从大页面到运行时控制器
前端
竹林8187 小时前
从报错到跑通:我用 @solana/web3.js 开发 Solana 钱包连接踩过的三个坑
前端
MariaH7 小时前
Node中操作MySQL
前端
还有多久拿退休金7 小时前
一个 var 让整个团队加班到凌晨——JS 闭包的那些暗坑
前端·javascript