| Workload isolation | Every sandbox pod runs under gVisor (runsc), a user-space kernel between the workload and the host. A cluster admission policy refuses any sandbox that does not request gVisor or that requests host namespaces or host-path mounts; the namespace additionally enforces the Kubernetes baseline pod security standard. | Kubernetes API server and node runtime, outside the workload. |
| Edge authentication | Every API request is authenticated at the edge and stamped with the resolved organization, user, and scope; backend services accept only edge-stamped identity. Because those services cannot tell a stamped header from a forged one, an in-cluster network policy fences them so the edge cannot be bypassed by dialing a Service directly. That fence is unconditional on every deployment shape: a self-managed install must name the ingress allowed to reach the services and will not render until it does. Its strength is the CNI’s — see network policy enforcement. | Edge gateway and cluster network policy. |
| Organization scoping | All product records (sandboxes, snapshots, volumes, secrets, runs, telemetry) are organization-scoped. A sandbox-scoped credential is additionally lineage-confined: it can read its own sandbox and snapshot lineage and act only on itself, and cannot create, update, or delete sandboxes or touch siblings. | Control-plane authorization on every route. |
| No workload-visible platform credentials | The customer workload container receives no Kubernetes token, capture proof, Hiloop credential, or cloud credential. A projected, short-lived Pod-bound token is mounted only in the trusted capture sidecar; the cloud metadata endpoint is unreachable. | Pod rendering and namespace network policy. |
| Network access | Deployments with the complete closed-policy bundle let each sandbox select public internet, proof-bound model gateway only, or no external egress. Every profile retains DNS and the dedicated proof-authenticated capture path; other sandboxes, general cluster services, private ranges, and metadata remain denied. Before activation, non-public updates fail closed. See network access. | Sandbox profile labels, namespace NetworkPolicy, and proof authentication. |
| Secret storage | Registered secrets are write-only to callers and envelope-encrypted at rest; no API returns a value. | Control-plane storage. |
| Secret use by sandboxes | A deployment with the complete proof-bound release path may admit an exact granted binding and inject the current bearer credential in external Envoy. Without that boundary, create is refused. Copying a raw credential into the workload is not a supported fallback because workload code can read it. | Fail-closed admission plus live-Pod proof, exact grant/binding checks, mTLS, and external header injection. |
| Platform-managed model credentials | No supported sandbox model path exists today. The approved target keeps provider keys outside the workload: Envoy owns the data plane while a Hiloop control service validates workload proof, policy, and budget and selects the authorized credential. Direct provider access is not a supported fallback. | Target/GAP; the existing Rust body proxy is operator-only. See model gateway. |
| Telemetry redaction | Capture proxies scrub a narrow set of recognized credential patterns from captured HTTP bodies and allowlisted environment values by default. Managed sandbox capture also scrubs its telemetry copy of supervised stdio, argv, and local attributes. A local hiloop run may explicitly disable its generic scan; managed sandbox capture cannot. Exact supported OAuth token exchanges remain metadata-only either way. No header value other than Content-Type and Content-Encoding is captured. Direct OTLP and bulk ingest remain unsanitized. See redaction. | Capture processes only; defense in depth, not permission to put secrets in telemetry. |