Security & RBAC
Stage: platform · What it does: role-based access, tenant isolation, and a data-residency architecture built for regulated buyers.
The security model
- No data migration. You connect your existing sources — no export, upload, or move step. Where data is processed depends on the mode: hosted runs on k3ld-managed compute; BYO AWS / self-hosted keeps reads and processing inside your account or perimeter.
- Three hosting modes. By default k3ld hosts everything on its managed infrastructure — zero AWS to set up. For regulated buyers, BYO AWS runs endpoints in your account (k3ld operates it), or the whole platform can be self-hosted on AWS in your environment — either way it's already covered by your security approval.
- You keep the weights. Export, move, retrain — no lock-in, no churn penalty.
- Tenant isolation. Every tenant (
metastore) is scoped; records, runs, and endpoints are owned and validated per tenant.
Roles
| Role | Can |
|---|---|
| Viewer | Browse catalog, see runs/endpoints (read-only) |
| Editor | Create pipelines, launch runs, deploy/attach adapters, exports |
| Admin | Everything, plus RBAC/grants, quotas, instance grants, deleting deployments |
Custom roles — beyond the three defaults, admins can create and assign custom roles with tailored feature permissions, instance grants, model grants, and governance policies (Settings → Roles). Deploy actions like delete require admin; instance choices are gated by grants (which instance types are approved for deploy/train in your tenant).
Guardrails you get by default
- Instance RBAC — endpoints can only use instance types granted for deploy; autoscaling is capped by the grant's max nodes.
- Model RBAC — which models can be used for which purpose, tenant-wide or per user (see 16-model-governance.md).
- VRAM checks — the platform refuses to create an endpoint a model can't fit.
- Run ownership — you can only act on runs/endpoints your tenant owns; cross-tenant ids are rejected, not ignored.
- API keys with spending limits — per-user keys with caps, so a runaway script can't drain budget.
- Audit trail — deployments, exports, merges, role and grant changes, and login events are logged.
Security controls (headline)
The platform enforces industry-standard security controls across authentication, sessions, transport, tenant isolation, and data handling — including multi-factor authentication, strong password policies, brute-force protection, encrypted transport, and strict per-tenant isolation with ownership checks.
Full control details are available on request. We share the complete control documentation — configurations, policies, and test results — directly with your security team (under NDA) during evaluation, so your review gets the specifics without publishing attacker-relevant details.
What this does NOT include (be honest with your reviewer)
- No independent certification is claimed here. As of this writing the platform has not been audited to SOC 2 / ISO 27001. The controls above are what the platform enforces; if you need certified attestation, ask the vendor team where they are on their certification roadmap and build the gap into your review.
- Hosted vs BYO vs self-hosted. Hosted (default) runs on k3ld-managed infrastructure. BYO AWS moves the serving endpoint into your account. Self-hosted on AWS runs the entire platform in your environment — both inherit your own security controls and procurement, not the platform's.
- Data-retention and deletion windows for your training data in managed storage are configurable; confirm the specific window that applies to your tenant with your account team.
Real-world examples
🏦 Financial services — the compliance pass
A bank's security review needs: data residency (✅ no migration — processed where you choose: hosted, BYO AWS, or self-hosted), approved infrastructure (✅ any hosting mode), role separation (✅ admin/editor/viewer), and an audit trail (✅ logged). The review is a walkthrough, not a re-architecture.
🏥 Healthcare — least privilege for PHI
A health system gives researchers editor on de-identified datasets and viewer elsewhere; only admins can grant new instance types or delete deployments. PHI-bearing connections are visible only to roles that need them.
🧑💼 SaaS — control the blast radius
A SaaS team issues API keys with spending limits per user. A misbehaving integration hits its cap and fails closed — it can't take down the whole tenant budget.
Gotchas
- Delete is admin-only by design — it tears down endpoints (and stops in-flight GPU jobs).
- With BYO AWS / self-hosted, quotas and instance availability are your account's; with hosted, they're the platform's.
- Role changes take effect on next request/refresh.