介绍
本项目使用Ruoyi-Vue和Ruoyi-Cloud,实现单点登录和oatuh2授权码模式,提供了前后端实现代码,对代码进行优化
使用redis、不受到二级域名cookie限制,支持分布式,对于第一次接触sso单点登录系统的人员有所帮助,借助本项目进行单点登录快速开发
1.配置域名
//win11 host文件所在位置C:\Windows\System32\drivers\etc
127.0.0.1 auth.server.com
127.0.0.1 cool.client1.com
2.启动项目
若依快速开发框架文档
请根据若依开发文档,部署nacos、redis、mysql,对若依开发框架熟悉正常部署即可
2.1 启动微服务作为授权服务
1.dev为前端项目
2.SSO作为授权服务
3.网关提供生成验证码、校验功能
2.2 启动前后端分离作为客户端
前端项目地址如下
http://auth.server.com:810/uniLogin 统一登录页面
http://cool.client1.com:820/ssoLogin 客户端回调地址
在浏览器输入即可跳转到统一登录页面,输入验证码即可自动登录
http://cool.client1.com:820/ssoLogin
3. 单点登录流程图
4.对框架修改地方
4.1 前端项目修改文件
前端路由 src/router/index.js
前端路由白名单 src/permisson.js
统一登录页面 uniLogin.vue
常量 constant.js
接口 src/api/login.js
cookie /src/utils/auth
4.2 后端项目修改文件
微服务网关 SsoFilter过滤器,添加了sso模块
前后端分离 SysLoginController添加了ssoLogin登录接口
5. 最后
如有任何问题欢迎批评指出,1.感谢若依快速开发框架,2.感谢smart-oatuh2项目,作者Joe.zhou 博客,3.感谢xxl-sso单点登录框架
本项目gitee地址
版权归原作者 Xiaoweidumpb 所有, 如有侵权,请联系我们删除。