Personal atproto services deployment handbook
atstack docs secrets.md
2.1 kB · 52 lines
Markdown
at main

Secrets #

This repository is designed to be public. Do not commit real secret values.

Secret Inventory #

Secret Generated by Stored where Rotation note
PDS admin password PDS installer password manager and /pds/pds.env rotate with PDS tooling if supported
PLC rotation/recovery keys PDS installer / PLC tooling password manager and /pds critical account recovery material
R2 live blob access key Cloudflare R2 ignored VM env file and password manager rotate by adding new key, updating PDS, then revoking old key
R2 live blob secret key Cloudflare R2 ignored VM env file and password manager never print in logs
R2 backup access key Cloudflare R2 /etc/pds-backup.env and password manager prefer separate key from live blob storage
R2 backup secret key Cloudflare R2 /etc/pds-backup.env and password manager never print in logs
Cloudflare Origin CA private key Cloudflare Origin CA VM file under /pds/certs or equivalent and password manager replace before certificate expiration
Cloudflare API token Cloudflare password manager only unless automation needs it use least privilege
SSH private key local machine ~/.ssh/gcp never copy into this repo
account password / app passwords user-created password manager rotate if exposed

Files That Must Stay Ignored #

  • /pds/pds.env
  • /etc/pds-backup.env
  • real .env files
  • *.key
  • *.pem
  • backup archives
  • SQLite databases
  • generated config under generated/ or rendered/

Redaction Rules #

Before sharing logs or command output, remove:

  • access keys and secret keys
  • bearer tokens
  • passwords
  • private keys
  • DIDs only if you want operational privacy
  • email addresses if not intended to be public

Rotation Order #

Rotate one class of secret at a time:

  1. create the replacement secret
  2. install it in the ignored production env or config file
  3. restart only the affected service
  4. run health checks
  5. revoke the old secret
  6. run one backup if the secret lives in /pds