Files
claude-wuerth-plato/memory/project_dummy_jwt_secret.md
T
2026-07-09 09:21:42 +02:00

2.0 KiB

name, description, metadata
name description metadata
project-dummy-jwt-secret Hartverdrahtetes Demo-JWT-Secret PLATO_DEMO_JWT_SECRET_2025 ist als Auth zu ersetzen — Speicherorte und Risiko.
node_type type originSessionId
memory project 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.