Hosted Security Model

Status: design. Target: ADR-0025 at hosted launch.

Threat model summary

ID Threat Likelihood Impact Mitigation
H1 Adapter key exfiltrated from server disk Medium High KMS-wrapped DEK; plaintext key never on disk
H2 Tenant volume read by another tenant Low Critical Physical isolation: 1 container, 1 volume per tenant
H3 Compromised provider key used to drain founder's bank Medium Critical Adapter keys are read-only by vendor convention; founder rotates on alert
H4 Cockpit XSS injects edit on proposal branch Low High Frontend escapes; backend re-validates path + policy; CSP strict
H5 Backup bucket read by hosted operator Medium Critical Founder owns the bucket; we hold a write-only role; restores are founder-initiated
H6 Insider with prod access reads tenant repo Low Critical Repo encrypted at rest with per-tenant DEK; operator access logged + signed

Likelihood/impact are coarse — refine post-launch.

Encryption at rest

Secret store for adapter keys

Network posture

Authentication boundary

Audit

What's intentionally absent