AI Executive Office — CXO Assistant Platform  ·  View 10 of 30  ·  3 · Structure

Multi-Tenancy and Isolation

One codebase, two deployment shapes, and isolation sold as a tier rather than promised as a property.

Editable source SVG draw.io All views
Shared control plane — never holds tenant business data Tenant registry tier · region · keys Config service versioned packs Onboarding pipeline Bicep + Deployment Env Industry packs gov · bank · energy Platform telemetry metadata only Pooled tier — shared runtime, logical isolation Shared compute and AI Container Apps tenant claim per request Azure OpenAI per-tenant quota AI Search index per tenant Shared data, separated SQL elastic pool RLS + tenant key Fabric capacity workspace per tenant Evidence store container per tenant Siloed tier — sovereign, dedicated deployment Dedicated runtime Container Apps env one per tenant OpenAI deployment dedicated PTU AI Search service dedicated Dedicated data and keys Azure SQL single database Fabric capacity dedicated F-SKU Key Vault mHSM customer-held key Ministry A siloed Bank B siloed Group C pooled Shared index is the leak path filter is mandatory, tested per release tier lookup deploys the same packs Multi-Tenancy — Isolation as a Purchased Tier Data store Application we own Security / platform External / third party Risk / gap synchronous batch One codebase, two deployment shapes. A tenant moves tier by re-running the onboarding pipeline against a new subscription, not by forking the product. v 1.0 · owner Data & AI Global Practice · date 2026-09

The decision

  • Isolation is a commercial tier, not an engineering compromise. Pooled tenants share compute with per-tenant indexes, row-level security and per-tenant keys; siloed tenants get a dedicated subscription. A sovereign public-sector tenant is siloed by default
  • The control plane never holds tenant business data — only tier, region, key references and configuration. That is what allows one team to operate every tenant without being able to read any of them
  • Moving tier is re-running the onboarding pipeline against a new subscription. It is a migration, not a fork

Risks

  • The shared search index is the leak path in the pooled tier. The mitigation is a mandatory tenant filter applied server-side, plus an automated cross-tenant probe suite in the release pipeline (view 22) — a code review is not a control
  • A noisy pooled tenant can exhaust shared model quota. Per-tenant token budgets and throttling are enforced at API Management, and view 23 alerts on it

Assumptions

  • Assumed roughly 80% of tenants take the pooled tier and 20% siloed. The unit economics of the whole product depend on that ratio and should be validated in the first two sales