用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/Dev-Toolbelt/dev-team-agents --skill database-multitenancy命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | database-multitenancy |
| description | Multi-tenancy DB — RLS, schema-per-tenant, database-per-tenant. |
| Strategy | Isolation | Migration complexity | Cost | Best for |
|---|---|---|---|---|
| Row-Level Security (RLS) | Logical (DB-enforced) | Single schema | Low | SaaS with many tenants, PostgreSQL-native stacks |
| Schema-per-tenant | Strong (namespace) | Multiplies with tenant count | Medium | ≤ a few hundred tenants, data residency requirements |
| Database-per-tenant | Maximum | Highest (separate infra) | High | Regulated industries (HIPAA, SOC 2), contractual isolation |
Default recommendation: start with RLS. Move to schema-per-tenant only when tenant count or compliance demands it. Never add database-per-tenant complexity speculatively.
| Signal | Multi-tenancy indicator |
|---|---|
tenant_id column in schema | RLS or shared-schema approach |
| Multiple schemas with identical structure | Schema-per-tenant |
| Multiple databases with identical structure | Database-per-tenant |
app.tenant_id in SQL or ORM config | RLS with session variable |
| PgBouncer in transaction mode | RLS with SET LOCAL required |
FORCE ROW LEVEL SECURITY — not just ENABLE — so the table owner is also subject to policies.SET LOCAL app.tenant_id inside transactions, never at session level, when connection pooling is present.tenant_id as the leading column in all composite indexes on multi-tenant tables.user_metadata for access control in Supabase — use app_metadata only.| When | Load |
|---|---|
| Implementing RLS, schema-per-tenant, database-per-tenant, or pgvector with multi-tenancy | references/tenant-isolation.md |