Security
Kadaikodi inherits the Burdenoff Workspaces security posture and adds commerce-specific protections.
Authentication
- OIDC SSO with OAuth device-code flows for CLIs and apps
- OAuth client credentials for service-to-service integrations
- Workspace-scoped tokens issued after workspace selection; auto-refresh before expiry
Authorization
- Role-based access control on every operation — each request is authorized against the caller's role before it runs
- Actor-based auth — identity arrives via
x-actor-id,x-actor-type,x-workspace-idheaders; the gateway enforces, the subgraph never re-implements - Scope types —
self,workspace,organization,global— enforced at the gateway edge
Multi-tenancy
- Every entity is workspace-scoped by default
- A single brand and a thousand-merchant marketplace run on the same isolation model
- Cross-tenant access is impossible at the data layer (Prisma + Postgres RLS)
Encryption
| Data | At rest | In transit |
|---|---|---|
| Backend database | AES-256 | TLS 1.2+ |
| Token storage (CLI) | File mode 0600 | TLS 1.2+ |
| Browser extension storage | chrome.storage encrypted | TLS 1.2+ |
| VS Code tokens | SecretStorage (OS keychain) | TLS 1.2+ |
Audit
Every action that creates / modifies / deletes a resource produces an audit log entry:
- Actor (user ID, type)
- Action (CREATE, UPDATE, DELETE, etc.)
- Resource type + ID
- IP, user agent, timestamp
- Before/after snapshots (for changes)
Compliance
Inherits the Burdenoff Workspaces platform posture. See Platform compliance → for SOC 2, GDPR, ISO 27001 status.