InfraCanvas Docs

Security & data handling

What the InfraCanvas agent reads, what leaves your machine, and what we never store.

InfraCanvas is infrastructure tooling, so this is the most important page. Here's exactly how data flows.

The agent connects outbound only

The agent opens a single outbound WebSocket (WSS) to InfraCanvas. It never listens on an inbound port, so you don't open firewall holes or expose your machine to the internet.

What the agent reads

Within its scope, the agent reads infrastructure metadata: hosts, containers, images, Kubernetes objects, and resource metrics. It reads this locally using the same interfaces you already have, namely the Docker socket and your kubeconfig.

What we never store

  • Secret values. Environment variables are reported as names only. The values are redacted at the source, on your machine, before anything is sent. Kubernetes Secret contents are never transmitted.
  • Credentials. Your kubeconfig, Docker credentials, and cloud keys never leave the machine.

Clusters (kubeconfig direct-connect and relay pods)

Clusters connections handle credentials differently from the agent, because the backend has to actually use them to connect — unlike API keys, which we only ever compare against a stored hash, never need back.

  • Direct connect. Your uploaded kubeconfig is encrypted at rest (AES-256-GCM) and only ever decrypted in memory to make the connection. It's never logged, and never included in audit-log payloads.
  • Relay pod. No kubeconfig is uploaded at all — the pod authenticates from inside your cluster using its own ServiceAccount token, scoped by the RBAC in the manifest you review before applying (not cluster-admin).

Both connection types report the same kind of Kubernetes metadata as an agent's kubernetes scope, and are subject to the same secret-redaction rule above.

Terminals and actions

Terminal sessions and actions are initiated from the dashboard and executed by the agent on your machine. Every action is recorded in the Audit Log with the acting user's email, the target, and a timestamp.

Isolation

All data is scoped per organization. Metrics, topology, and audit records are keyed by organization, so one account can never read another's data, even when the same physical machine is connected to multiple accounts.

Within a single organization, each machine's identity is bound to the specific API key that first registered it — a different key belonging to the same org (a second machine's key, for example) can't claim an existing machine's session and take over its live connection.

Revoking access

  • Disconnect one account: rotate or delete that account's API key under Settings → API Keys.
  • Disconnect a machine entirely: uninstall the agent.

On this page