用途:当系统采用多租户架构时,提供租户隔离的安全规范与检查清单,防止租户间数据越权访问。
主要能力:覆盖五类陷阱。一是租户上下文来源信任错误:请求头(如 X-Tenant-Code)可被伪造,必须与认证 token 中的 tenantId 做一致性校验,不通过返回 403。二是 Service 层裸用 findById/getOne/getReferenceById/findAllById 绕过全局过滤,要求 Repository 提供 findByTenantIdAndId、findByTenantIdAndIdIn 等租户感知方法。三是查询层缺少全局租户过滤,可用 Hibernate @Filter、MyBatis 拦截器或基类强制携带 tenantId。四是前端未处理租户不匹配的 403,应清理登录态并跳转登录页。五是功能级授权不等于数据级隔离,仅靠前端隐藏入口不安全,endpoint 入口需独立校验租户编码、角色或订阅状态。
使用方式:按检查清单逐项核对,并用 grep 嗅探裸 findById 等调用;可选在 CI 中扫描 *Service.java 的 findById( 调用并使构建失败。多语言实现示例见 references/multi-lang-examples.md。
适用场景:Spring Boot + JPA/MyBatis、Gin + GORM/sqlx、Express + Prisma/TypeORM、FastAPI + SQLAlchemy 等多租户系统。
限制:资料未提供具体安装命令、收费与价格信息;规则溯源章节名等细节暂未提供。