Added a detailed guide (`jwt-in-docker.md`) to address JWT validation challenges in Docker environments (Split Horizon issue). Refactored Keycloak realm configuration (`meldestelle-realm.json`) with updated roles, clients, and improved infrastructure clarity. Updated `.env` variables for streamlined token validation. Adjusted Docker Compose services (`dc-backend.yaml`) to use revised Keycloak environment variables.
2.3 KiB
2.3 KiB
| type | status | owner | date | participants | ||
|---|---|---|---|---|---|---|
| Journal | COMPLETED | Curator | 2026-01-22 |
|
Session Log: 22. Jänner 2026
Zielsetzung
Analyse der Infrastruktur, Behebung von Authentifizierungs-Problemen (JWT/Keycloak) im Docker-Netzwerk und Validierung der "Tracer Bullet" Architektur (Ping-Service).
Durchgeführte Arbeiten
1. Infrastruktur & IAM (Keycloak)
- Analyse: Diskrepanz zwischen Dokumentation (
Testing_with_Postman.md) und Konfiguration (meldestelle-realm.json) festgestellt. - Fix (Realm):
- Neue Rolle
MELD_USERals technischer Platzhalter für verifizierte Benutzer eingeführt. - Neuen Confidential Client
postman-clienterstellt, um saubere Backend-Tests via Password-Grant zu ermöglichen, ohne den Frontend-Client unsicher zu machen. - Dem User
admindie RolleMELD_USERzugewiesen.
- Neue Rolle
- Fix (Networking/JWT):
- Das "Split Horizon"-Problem identifiziert (Token Issuer
localhostvs. Docker-interner Keycloak-Host). .envDatei refactored: Trennung inKC_ISSUER_URI(Public) undKC_JWK_SET_URI(Internal).dc-backend.yamlaktualisiert:api-gatewayundping-servicenutzen nun diese expliziten Variablen.
- Das "Split Horizon"-Problem identifiziert (Token Issuer
2. Dokumentation (Single Source of Truth)
- Update:
docs/05_Backend/Guides/Testing_with_Postman.mdan den neuenpostman-clientangepasst. - Neu:
docs/07_Infrastructure/guides/jwt-in-docker.mderstellt. Dieses Dokument erklärt das "Split Horizon"-Problem und dient als Referenz für Frontend- und Backend-Entwickler.
3. Testing
- Erfolgreicher Durchlauf aller Postman-Tests (Connectivity, Health, Security Block, Auth Login, Security Access).
- Bestätigung, dass der
ping-servicenun korrekt Token validiert, die von außen (Postman) kommen, aber intern (Docker) geprüft werden.
Ergebnisse
- Die lokale Entwicklungsumgebung ist nun vollständig funktionsfähig und auth-ready.
- Die Infrastruktur-Konfiguration ist sauberer und expliziter (Trennung von Public/Internal URLs).
- Eine solide Basis für die Frontend-Login-Implementierung ist geschaffen.
Nächste Schritte
- Frontend: Implementierung des Login-Flows (Authorization Code Flow mit PKCE) unter Nutzung des
web-appClients. - Backend: Beginn der Modellierung der Events Domain (Veranstaltungen).