用途:面向多租户架构系统的隔离安全规范与代码审查清单,防止租户间数据越权访问和串租户。
主要能力:以“陷阱 + 错误示例 + 正确做法 + 检查清单”的形式给出可执行规范,覆盖五类问题。一是租户上下文来源信任错误:请求头(如 X-Tenant-Code)可被伪造,必须与认证 token 中的 tenantId 做一致性校验,不通过返回 403 而非静默放行。二是 Service 层裸用 findById/getOne/getReferenceById/findAllById 绕过租户过滤,要求 Repository 提供 findByTenantIdAndId、findByTenantIdAndIdIn 等租户感知方法,并给出 grep 嗅探命令。三是查询层缺少全局租户过滤,可用 Hibernate @Filter、基类强制 tenantId 或 MyBatis 拦截器自动追加条件。四是前端未处理租户不匹配的 403,应清理登录态并跳转登录页并提示。五是功能级授权不等于数据级隔离,仅靠前端隐藏入口不安全,后端 endpoint 需独立校验租户编码、角色或订阅状态。
使用方式:作为开发与 review 阶段的检查规范使用,按认证与授权、功能授权、数据隔离、前端处理四组清单逐项核对;可结合 CI 扫描 Service 层 findById 调用。多语言实现示例见 references/multi-lang-examples.md。
适用场景:Spring Boot + JPA/Hibernate 或 MyBatis、Gin + GORM/sqlx、Express + Prisma/TypeORM、FastAPI + SQLAlchemy 等多租户系统。
限制:资料未提供具体安装命令、收费方式与效果数据;示例为规范示意,落地需结合项目实际调整。