Security

Palace Server is designed so your data and your security posture stay in your hands. Reviewing it for your company? See the one-page IT & security evaluation brief.

Data stays in your network

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

Local embeddings

Embeddings are computed locally with ONNX Runtime (all-MiniLM-L6-v2). Prompts and documents are never sent to a third-party embedding API. The Docker image includes the model, so it needs no internet access. Binary installs download it once from Hugging Face (sending none of your data) or load it from a local folder set in PALACE_EMBED_MODEL_DIR.

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. Online revalidation is optional and off by default.

You own your data and backups

Data persists in your own PostgreSQL database (pgvector), so standard tools like pg_dump give you a complete copy at any time, with no special tooling and 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. Encrypt the database connection with sslmode=verify-full in DATABASE_URL.

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.