Secrets
Im secrets/-Ordner liegen sensible Werte, die nicht in .env landen sollen.
Pflicht-Secrets lokal
Lege mindestens diese Dateien an:
secrets/db_passwordsecrets/jwt_secret
Optionale Secrets
Je nach genutzten Features:
secrets/market_price_sync_secretsecrets/steam_api_keysecrets/csmarket_api_keysecrets/steam_bots_jsonsecrets/steam_bot_refresh_tokensecrets/steam_bot_shared_secretsecrets/steam_bot_identity_secretsecrets/steam_bot_web_api_keysecrets/stripe_secret_keysecrets/stripe_webhook_secretsecrets/smtp_usersecrets/smtp_password
Laufzeitverhalten
Das Backend liest diese Dateien beim Container-Start aus /run/secrets, baut daraus die DATABASE_URL aus DB_HOST, DB_PORT, DB_NAME, DB_USER und db_password und startet danach automatisch mit prisma migrate deploy.
Beispiele
Beispielwerte dürfen dokumentiert werden:
openssl rand -hex 32 > secrets/jwt_secret
printf '%s' 'ein-starkes-db-passwort' > secrets/db_password
Echte Secrets dürfen nicht in Antworten, Logs, Commits oder Dokumentation erscheinen. Wenn Secret-Dateien geprüft werden müssen, nur Existenz, Dateinamen oder nicht-sensitive Metadaten nennen.
Feature-Abhängigkeiten
- Double-Opt-In benötigt
SMTP_HOST,SMTP_PORT,SMTP_FROM_EMAIL,secrets/smtp_userundsecrets/smtp_password. - Neue Registrierungen benötigen
secrets/steam_api_key, weil darüber das Mindestalter des Steam-Accounts geprüft wird. - Marktpreis-Refresh benötigt
secrets/market_price_sync_secretund in der Regelsecrets/csmarket_api_key. - Stripe Wallet Deposits benötigen
secrets/stripe_secret_keyundsecrets/stripe_webhook_secret. - Steam-Bots benötigen Bot-Konfiguration mit Refresh-Token und Mobile-Authenticator-Secrets.