docs: add Phase 6 multi-tenancy plan to roadmap
All checks were successful
CI / lint-and-test (push) Successful in 43s
All checks were successful
CI / lint-and-test (push) Successful in 43s
- Row-level isolation architecture - Per-tenant Entra + Graph credentials - License-gated premium feature - Deferred until SIEM export and alerting are production-tested
This commit is contained in:
29
ROADMAP.md
29
ROADMAP.md
@@ -72,3 +72,32 @@ Goal: add AI-powered analysis and external tool integration.
|
|||||||
## Completed in this PR
|
## Completed in this PR
|
||||||
All Phase 5 items marked done were implemented in v1.3.0–v1.5.0.
|
All Phase 5 items marked done were implemented in v1.3.0–v1.5.0.
|
||||||
Redis caching + async queue implemented in v1.6.0, switched to Valkey.
|
Redis caching + async queue implemented in v1.6.0, switched to Valkey.
|
||||||
|
UI polish (topbar, footer, clickable pills) in v1.6.1–v1.6.4.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Phase 6: Multi-Tenancy (Premium) ⏸️
|
||||||
|
Goal: allow MSPs to manage multiple client tenants from a single deployment.
|
||||||
|
|
||||||
|
Status: **Planned — not started**. Architecture designed, pending validation of core features (SIEM export, alerting) in production first.
|
||||||
|
|
||||||
|
### Architecture
|
||||||
|
- Row-level isolation: `tenant_id` field on every MongoDB document
|
||||||
|
- Each tenant has their own Microsoft Entra tenant + app registration credentials
|
||||||
|
- Auth: user's JWT `tid` claim maps to tenant config automatically
|
||||||
|
- Super-admin role for MSP staff to access all tenants
|
||||||
|
|
||||||
|
### Implementation phases
|
||||||
|
- **Phase 6.1** (2–3 days): Tenant model & registry, tenant-aware data layer, per-tenant Graph API auth
|
||||||
|
- **Phase 6.2** (1 day): Tenant-scoped API routes, tenant-specific config endpoints
|
||||||
|
- **Phase 6.3** (2 days): Frontend tenant switcher, tenant name display, admin page
|
||||||
|
- **Phase 6.4** (1 day): License gating — signed JWT `LICENSE_KEY` gates multi-tenant mode
|
||||||
|
|
||||||
|
### Licensing model
|
||||||
|
- Single-tenant: remains MIT/free
|
||||||
|
- Multi-tenant: premium feature requiring a signed license key
|
||||||
|
- License key is a JWT with claims: `plan`, `max_tenants`, `exp`, `features`
|
||||||
|
- Offline license generation tool included
|
||||||
|
|
||||||
|
### Effort estimate
|
||||||
|
~7–9 days total. Deferred until SIEM export and alerting are battle-tested.
|
||||||
|
|||||||
Reference in New Issue
Block a user