# ruoyi-sso-oauth2 **Repository Path**: xiaoweidumpb/ruoyi-sso-oauth ## Basic Information - **Project Name**: ruoyi-sso-oauth2 - **Description**: 1.使用若依微服务,若依前后端分离版快速开发框架。 2.基于SpringBoot2.0+Element-Ui,支持前后端分离的oatuh2.0授权模式的单点登录系统。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 27 - **Forks**: 15 - **Created**: 2022-10-30 - **Last Updated**: 2025-09-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: Java ## README ## 致谢 感谢若依快速开发框架(前后端分离版、微服务版),感谢smart-oatuh2项目,作者[Joe.zhou](https://blog.csdn.net/a466350665) ``` smart-oatuh2项目地址:https://gitee.com/a466350665/smart-sso 若依官网: http://doc.ruoyi.vip/ ``` ## 介绍 本项目使用Ruoyi-Vue和Ruoyi-Cloud,实现单点登录和oatuh2授权码模式,提供了前后端实现代码,对代码进行优化 使用redis、不受到二级域名cookie限制,支持分布式,对于第一次接触sso单点登录系统的人员有所帮助,借助本项目进行单点登录快速开发 ### 关于单点登录一些总结 单点登录凭证传递方法总结: 1.直接在URL中传递认证信息,能跑就行(安全性有问题,截取认证信息,在任何计算机都能进行单点登录)。 2.在二级域名中设置cookie,安全性有保障,但是域名受限制。 3.模仿淘宝,利用iframe+postMessage跨域通信传递认证信息。 4.微博开发者平台将cookie存储在统一登录页面,进行页面回调。 尝试使用过的框架 1.CAS(前后端不分离、改造成本大)、2.xxl-sso(一个很好的单点登录实现框架)3.smart-oatuh2(本项目使用框架),因为业务需求,采取了微博开放者平台的页面跳转实现,如果需要模仿淘宝单点登录系统请使用iframe+postMessage ### 基于iframe+postMessage实现代码 ``` 客户端:嵌入统一登录页面 ``` ``` 统一登录页面: 登录按钮被点击,登录函数.then(() => { window.parent.postMessage(“认证信息”,'http://client3.com:890/ssoLogin') } ``` ## 使用文档 https://blog.csdn.net/qq_43751489/article/details/127640796