当前位置: 首页 > news >正文

升鲜宝 生鲜配送供应链管理系统 SaaS Admin 权限体系完整架构图

目标:

🔥 RBAC + 菜单权限 + API 权限 + 数据权限 四层融合
🔥 支持平台运营多角色
🔥 支持多租户 SaaS 数据隔离
🔥 可扩展到微服务

一、整体权限体系五层架构图
┌──────────────────────────────────────────┐
│              SaaS Admin 前端            │
│         Vue3 动态菜单 + 按钮控制        │
└──────────────────────────────────────────┘│▼
┌──────────────────────────────────────────┐
│           Admin API 网关层              │
│     JWT 认证 + Token 校验 + 登录拦截    │
└──────────────────────────────────────────┘│▼
┌──────────────────────────────────────────┐
│         权限控制层(Security Layer)    │
│                                          │
│  ① RBAC 权限校验                        │
│  ② API 权限校验                         │
│  ③ 菜单权限控制                         │
│  ④ 数据权限 SQL 注入                    │
└──────────────────────────────────────────┘│▼
┌──────────────────────────────────────────┐
│           业务服务层(Service)         │
│     Tenant / Billing / Pricing 等       │
└──────────────────────────────────────────┘│▼
┌──────────────────────────────────────────┐
│           SaaS 平台数据库               │
│ sys_user / sys_role / sys_permission    │
│ sys_menu / sys_role_data_scope          │
└──────────────────────────────────────────┘

  

 

二、核心权限模型关系图(ER 逻辑)

 
sys_user │ ├── sys_user_role ── sys_role │ ├── sys_role_permission ── sys_permission │ └── sys_role_data_scope │ ▼ 数据权限范围

三、权限分层结构说明


1️⃣ 第一层:认证层(Authentication)

技术实现

  • JWT Token

  • 登录校验

  • Token 解析

  • 登录态存入 ThreadLocal

认证流程图

 
用户登录 ↓ 密码校验 ↓ 生成 JWT ↓ 前端保存 ↓ 每次请求带 Token ↓ 解析 userId / roleIds

2️⃣ 第二层:RBAC 权限控制层

控制目标

  • 谁可以访问哪个接口

  • 谁可以点击哪个按钮

  • 谁可以看到哪个菜单


控制逻辑

 
用户 ↓ 角色 ↓ 权限点(perm_value) ↓ 接口拦截 @PreAuthorize("hasAuthority('saas:tenant:create')")

3️⃣ 第三层:菜单权限(前端可视化控制)

数据来源

  • sys_menu

  • sys_permission

动态菜单加载

 
登录成功 ↓ 查询角色拥有的 menu_id ↓ 生成树结构 JSON ↓ 返回前端 ↓ Vue 动态渲染路由

4️⃣ 第四层:API 权限校验

控制方式

后端方法级控制:

 
@PreAuthorize("hasAuthority('saas:billing:invoice:recalc')") public void recalcInvoice() { }

5️⃣ 第五层:数据权限层(最关键)

控制维度

维度示例
tenant_id 只能看负责的租户
shard_id 只能看指定分片
module_code 只能看 POS 客户

数据权限架构图

 
Service ↓ Mapper ↓ MyBatis Interceptor ↓ 自动拼接 WHERE 条件

四、完整权限控制流程图

 
请求到达 ↓ Token 解析 ↓ 加载用户信息 ↓ 加载角色 ↓ 校验接口权限 ↓ 执行方法 ↓ SQL 执行前 ↓ 数据权限注入 ↓ 返回结果

五、权限粒度设计矩阵

控制层控制对象存储表
登录 用户身份 sys_user
菜单 页面显示 sys_menu
按钮 页面操作 sys_permission
API 接口调用 sys_permission
数据 行级过滤 sys_role_data_scope

六、典型角色权限示例


超级管理员

  • 全部菜单

  • 全部接口

  • 全部租户

  • 全部分片


运营管理员

  • 租户中心

  • 套餐中心

  • 授权管理

  • 只能看自己负责租户


财务管理员

  • 账单中心

  • 支付中心

  • 报表中心

  • 无法修改套餐


客服

  • 租户列表

  • 冻结解冻

  • 不可修改价格


七、数据权限示例

情景:运营 A 只负责 3 个租户

sys_role_data_scope:

 
role_id = OPS_ADMIN scope_type = 2 scope_value = 1001 scope_value = 1002 scope_value = 1003

自动拼接:

 
WHERE tenant_id IN (1001,1002,1003)

八、企业级增强架构图(推荐)

 
┌──────────────┐ │ SpringSecurity│ └──────┬───────┘ │ ┌──────▼────────┐ │ 权限表达式引擎 │ └──────┬────────┘ │ ┌──────▼────────┐ │ DataScope 组件 │ └──────┬────────┘ │ ┌──────▼────────┐ │ MyBatis拦截器 │ └──────┬────────┘ │ ┌──────▼────────┐ │ SQL AST 重写 │(JSqlParser 推荐) └───────────────┘

九、权限与 SaaS 多租户的关系

重要区分:

类型作用
tenant_id(业务隔离) 每租户一个数据库
sys_role_data_scope 平台运营数据范围
MyBatis tenant_id 插件 业务系统隔离
Admin 数据权限 运营隔离

十、最终完整权限体系总结

你现在拥有:

✅ 用户体系
✅ 角色体系
✅ 菜单体系
✅ API 权限体系
✅ 数据权限体系
✅ 审计体系

这已经是 企业级 SaaS Admin 权限架构

http://www.jsqmd.com/news/378115/

相关文章:

  • duckdb_创建新的数据类型作为检查的方式
  • Check框架:支持Mock的C单元测试设备
  • 2026年内蒙古人力资源服务公司推荐:基于多行业实测评价,针对招聘与风控痛点精准指南 - 品牌推荐
  • Perplexity AI 团队以 扩散预训练语言模型
  • 2026年内蒙古人力资源服务公司推荐:基于合规与风险管控场景深度评价 - 品牌推荐
  • 2025 开源先锋 33 人评选启动,快来推荐你心尖上的开源人物吧!
  • 福寿螺检测数据集VOC+YOLO格式545张2类别
  • 2026年内蒙古人力资源服务公司推荐:聚焦企业用工痛点,基于多场景服务能力深度评测 - 品牌推荐
  • 聊聊好用的读写台,佳视路读写台保护视力效果好吗 - 工业品牌热点
  • GPU架构-SIMT
  • 2026年上海GEO优化服务性价比排名,哪家划算 - myqiye
  • SIMT与SIMD定量对比
  • 谷物健康茶饮品牌加盟推荐指南:小白开店优选蓝海赛道靠谱品牌 - 品牌策略主理人
  • blender开发 RuntimeError: name ‘mathutils‘ is not defined解决办法
  • 2026年河北地区雷雷金属实力大揭秘,管理水平与付款方式靠谱吗? - 工业推荐榜
  • 网上买膜贴车衣怎么选,青岛膜大师臻装工坊支招 - 工业推荐榜
  • 2026年河北地区性价比高的选择专业近视防控服务公司排名 - 工业品牌热点
  • 聊聊宜昌源头多层板加工厂家,价格和质量如何 - 工业品网
  • 2026年靠谱的数字展厅建设公司排名,盛世笔特专业公司榜上有名 - myqiye
  • 2026年哪家人力资源公司更专业?内蒙古地区推荐与评价,应对灵活用工痛点 - 品牌推荐
  • 细聊湖北源头木方加工厂家,价格费用怎么算? - 工业品网
  • 如何选择高效合规的人力资源伙伴?2026年内蒙古人力资源服务公司评测与推荐 - 品牌推荐
  • 2026年全BXT打包机年度排名 性价比高的品牌推荐 - mypinpai
  • 不踩雷!最强的降AIGC软件 —— 千笔·降AI率助手
  • 值得选的GEO服务品牌,能让AI推荐的专业品牌汇总 - 工业设备
  • 政企单位IM软件推荐:安全合规是首选 - 企业数字化观察家
  • 新手也能上手 8个AI论文软件测评:本科生毕业论文写作全攻略
  • 简单理解:什么时候需要开启 NVIC(嵌套向量中断控制器)?
  • 电商管理后台api接口文档 - Lang
  • 2026雅思培训机构哪家好?热门机构实力对比与分析 - 品牌排行榜