Files
makemd/docs/guides/non-saas-multi-tenant-checklist.md
Ansonai 6759d47de4 docs: 新增V30.0版本相关设计文档与指南
新增服务器启动文档、设计说明书、风险清单等核心文档
补充前端集成蓝图、多租户实施清单、上线红线检查清单
添加质量保障文档与早期业务规格书
2026-03-16 01:31:26 +08:00

43 lines
1.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 非 SaaS 多租户实施清单 (V30.0)
## 1. 实施要点
- **数据独占**:每个租户拥有独立的 `tenant_id` 与加密盐。
- **资源配额**:严格限制单个租户的并发 Worker 数量与算力开销。
## 2. 多租户隔离架构
### 2.1 数据层隔离
| 层级 | 隔离策略 | 实现方式 |
|------|----------|----------|
| 数据库 | 逻辑隔离 | 所有表添加 tenant_id 索引列 |
| 表结构 | 租户专属表 | cf_{租户标识}_{业务表} (如需物理隔离) |
| Redis | 键名前缀 | `{tenantId}:{业务Key}` |
### 2.2 应用层隔离
- **TenantContext**:请求级别租户上下文 ThreadLocal 传递
- **行级安全**:所有查询自动注入 `WHERE tenant_id = ?` 条件
- **跨租户校验**API 层验证操作权限与数据归属
### 2.3 资源配额管理
| 资源类型 | 配额限制 | 熔断策略 |
|----------|----------|----------|
| API 并发 | 100 req/s/租户 | 超出返回 429 |
| Worker 并发 | 10 任务/租户 | 队列满拒绝 |
| 存储空间 | 10 GB/租户 | 定期清理日志 |
## 3. 安全实施清单
- [ ] 数据库连接池配置租户路由中间件
- [ ] Redis 键空间隔离验证
- [ ] 日志脱敏 (tenantId 脱敏处理)
- [ ] API 网关层租户识别 (Header: X-Tenant-ID)
- [ ] 跨租户漏洞渗透测试
## 4. 测试用例
- [ ] 租户 A 无法访问租户 B 的数据
- [ ] 超配额请求正确返回 429 错误
- [ ] 租户删除后数据完全清理
---
**版本**: V30.0
**更新日志**: [AI-3 @ 2026-03-15] 补充多租户隔离架构与实施清单