Security

Palace Server is designed so your data and your security posture stay in your hands.

Data stays in your network

Palace Server runs entirely on your infrastructure. There is no telemetry, no logging to external services, and no outbound traffic required for normal operation. Your memory, drawers, and knowledge-graph data never reach us.

Local embeddings

Embeddings are computed locally with ONNX Runtime. Prompts and documents are never sent to a third-party embedding API.

Offline, signed licensing

License keys are Ed25519-signed strings verified locally — no network connection is required after you set PALACE_LICENSE_KEY. The signed payload contains your seat count and expiry date and is verified cryptographically on every server start, so air-gapped deployments are fully supported.

You own your data and backups

Data persists in PostgreSQL (pgvector), so standard database backups and restores work without any special tooling. You can export all drawers and knowledge-graph entries as standard JSON at any time — there is no lock-in.

Operational hardening

  • Configure via environment variables (12-factor friendly); migrations run automatically on startup.
  • Use a strong, randomly generated PALACE_JWT_SECRET (e.g. openssl rand -hex 32).
  • Restrict database and admin endpoints to trusted networks and terminate TLS at your edge / reverse proxy.

Responsible disclosure

If you believe you have found a security vulnerability, please report it privately through the contact form before any public disclosure. We aim to acknowledge reports within one business day and will work with you on a fix and coordinated disclosure timeline.