1.项目描述
基于多租户架构的统一后台管理系统,通过租户ID实现三个独立后台管理系统(省集约甩单、智慧扫楼、翼合伙)共享同一套代码。集成统一认证中心,实现多系统统一认证和注销。
2.技术栈
Spring Boot 2.5.4、Spring Security、MyBatis-Plus、MySQL、Redis、JWT、OAuth2、Vue 2.7、Element UI
3. 安全设计
- Spring Security:基于Spring Security实现安全框架
- JWT认证:使用JWT实现无状态认证,Token包含tenantId实现多租户识别
- 密码加密:使用BCrypt进行密码加密存储
- 短信验证码:登录时要求输入短信验证码,增强安全性
- 图形验证码:登录时使用图形验证码防止暴力破解
- IP限制:支持获取验证码的IP限制,防止恶意请求
- 账号冻结机制:支持根据登录时间、账号等级自动冻结账号
代码组织
- 模块划分:
- common:公共模块(认证、配置、工具类等)
- system:系统管理模块(用户、角色、菜单、租户等)
- hnfyxy:省集约甩单系统业务模块
- hnzhsl:智慧扫楼系统业务模块
- hnfqdsl:翼合伙系统业务模块
核心工作(前后端全栈开发)
(1)多租户架构设计:设计基于tenantId的数据隔离方案,通过JWT Token中的tenantId实现多租户识别,三个系统共享代码但数据隔离
(2)统一认证系统开发:
- 基于OAuth2实现统一认证中心集成,为三个系统分别配置认证参数
- 实现统一认证登录流程(获取accessToken、生成JWT Token、Redis存储)
- 实现统一认证注销功能,支持多系统统一注销
- 实现认证服务探活和降级处理机制
(3)后端开发:使用Spring Security实现JWT认证、RBAC权限控制,开发用户管理、业务管理等模块
(4)前端开发:使用Vue 2开发管理后台,实现多租户路由隔离、租户选择、统一认证登录等功能
(5)数据库设计:设计多租户表结构,所有业务表包含tenantId字段实现数据隔离
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论