---
name: project-dummy-jwt-secret
description: Hartverdrahtetes Demo-JWT-Secret PLATO_DEMO_JWT_SECRET_2025 ist als Auth zu ersetzen — Speicherorte und Risiko.
metadata: 
  node_type: memory
  type: project
  originSessionId: 9259f85f-e34d-4327-89e2-534bbfbc48c2
---

In Backend UND Frontend ist das gleiche JWT-Secret `PLATO_DEMO_JWT_SECRET_2025` hartverdrahtet. Das Frontend signiert seine eigenen Tokens (Issuer = Client), Backend akzeptiert sie mit HS256. Wer das Bundle hat, kann sich ein Token für beliebige User basteln.

**Fundstellen (Stand 2026-05-21):**
- BE: `libs/command/command-be/src/lib/auth/dummy-auth-contants.ts`
- BE (Duplikat im `dummy-for-development/`-Ordner): `libs/command/command-be/src/lib/auth/dummy-for-development/dummy-auth-contants.ts`
- BE Strategy (vorgeblich "prod"): `libs/command/command-be/src/lib/auth/jwt.strategy.ts:13` — Kommentar `// fest verdrahtet`
- BE Dummy-Strategy: `libs/command/command-be/src/lib/auth/dummy-for-development/dummy-jwt-strategy.ts`
- BE Dummy-Token-Controller: `libs/command/command-be/src/lib/auth/dummy-for-development/dummy-jwt-token.controller.ts`
- FE: `libs/common/frontend-common/src/lib/be-sync/dummy-jwt-creator.ts:2`
- FE-Aufrufer: `plato-web-client.ts:20`, `sqlite-upload-client.ts:3`
- Controller-Guard: `libs/command/command-be/src/lib/command.controller.ts:23,35` mit `@UseGuards(AuthGuard('jwt'))`

**Why:** Das ist die laufende Aufräum-Linie für DEV — soll durch echte IdP-Anbindung an [[project-idp-witglobal]] ersetzt werden. Marcus hat in dieser Session zuerst die Token-/Layout-/Crypto-Themen abgearbeitet (Commits `94d19a5`, `ee57b86` auf `development`), Auth-Hardening steht als nächster Block an.

**How to apply:** Beim Umbau alle Fundstellen rauswerfen (Konstante, beide Strategies, Dummy-Controller, FE-Token-Creator, Imports). Replace mit `passport-jwt` + JWKS-Verifikation gegen `https://login-dev.witglobal.net/pf/JWKS`, `issuer`-Check, `audience`-Check (`KONZ-PlaTo-Customer-DEV`). FE postet kein selbstsigniertes Token mehr, sondern den IdP-Access-Token.
