Skip to main content

Where Your Plex Token Actually Lives in AMUD Dashboard

AES-GCM encrypted integration creds in SQLite, .amud-secrets-key on disk. What gets encrypted and what doesn't.

By Youssef Boubli · Creator of AMUD Dashboard

Storing X-Plex-Token=abc123 in plain text in a yaml file on disk always felt wrong. Storing it in plain text in SQLite felt equally wrong.

AMUD Dashboard encrypts integration secrets at rest with AES-GCM. Plex, Jellyfin, Proxmox API tokens, Home Assistant tokens — encrypted blob in the database, not readable if someone copies amud.db without the key.

The keyfile

.amud-secrets-key on the host. Derived key material for encryption/decryption at runtime.

Back it up with your database. Restore DB without key = your tokens are toast. You'll re-enter them in settings. Annoying but not catastrophic.

What's not encrypted

App URLs, card names, layout stuff — none of that's secret. Your Jellyfin URL being http://10.0.0.5:8096 isn't the sensitive part. The API key is.

Password hashes use Argon2id separately. Different layer. Same philosophy: don't store usable secrets in recoverable form.

Threat model (realistic)

This stops "someone copied my backup drive" from leaking your Proxmox token. It doesn't stop someone with root on your running server — they own the box anyway.

Homelab threat model. Not banking.

Full security writeup: /docs/security

Rotate tokens in integrations settings if you think the DB leaked. Same as any other dashboard.