-
前言:权限系统不是 RBAC,而是“数据边界”
- 在 B 端系统、SaaS 系统中,权限问题是第一等级的安全问题
- 一个字段过滤不到位,就可能造成“跨租户数据泄露”
- 系统越大越要高度关注权限边界与隔离策略
-
权限系统的三大层次
- 功能权限:能不能点
- 数据权限:能不能看
- 操作权限:能不能改
-
SaaS 多租户架构下的权限挑战
- 租户隔离(Tenant Isolation)
- 用户归属与层级关系
- 数据行级过滤(Row-Level Security)
- 多维组织架构(项目、部门、角色)的权限叠加
-
数据权限的三种主流方案
- SQL 拼接 DataScope(常见但风险大)
- Query Wrapper 注入过滤器(安全性提升)
- 数据库级 RLS(Row Level Security) (安全级别最高)
-
权限边界的核心技术设计
- Permission DSL
- 资源目录(Resource Catalog)
- 租户隔离策略(库、表、行、列、字段级隔离)
- 缓存层与权限缓存隔离
- 后端 API 层的“双重校验”
-
典型高风险场景剖析
- 导出接口忘记加数据权限
- 批量查询绕过租户隔离
- 后台管理端误操作导致权限穿透
- 组织架构变更导致权限链路混乱
-
实战方案:企业级权限隔离体系建设
- 统一权限中心
- 权限变更审计
- 权限可视化与追踪
- 权限风控与动态策略(敏感操作二次校验)
- 权限缓存快照与回滚机制
-
总结
- 权限系统是企业级后端最难做的部分之一
- 真正的权限不是“角色 + 权限”
- 权限 = 资源 + 行为 + 数据边界
- 数据隔离做到位,是企业级系统的生命线