Files
Julien Denizot b9800bad10
CI / rust (push) Has been cancelled
docs: prepare public technical preview
2026-06-24 16:09:22 +02:00

1.4 KiB

Security Model

Trust boundaries

Browser to controller

The web interface is currently intended for local or otherwise protected access. Authentication and reverse-proxy hardening are not yet provided by the technical preview.

Controller to agent

Controls include filesystem permissions, typed requests, protocol-version validation, strict identifier validation, bounded responses, and no generic command request.

Agent to Docker

This is the strongest privilege boundary. Docker access can provide effective control over the host. Compromise of the agent must be treated as severe.

Core invariants

  • The controller has no Docker socket.
  • The controller has no shell-execution facility.
  • The controller does not read SQLite directly.
  • The agent accepts only known request variants.
  • Operation parameters are validated.
  • Backup identifiers cannot contain path traversal.
  • Service identifiers are restricted.
  • Verification storage is mounted read-only.
  • Backup artifacts must be regular files during verification.
  • Service logs are bounded.
  • State-changing operations are persisted.

Integrity limitations

Checksums detect unexpected artifact changes. They do not prove semantic database validity, successful restoration, off-site durability, or the absence of coordinated tampering with both data and metadata.

Regular restoration tests remain necessary.