Passwort-Vergessen-Funktion (Recherche: Keycloak vs. Frontend) #91
Labels
No labels
component/backend
component/docs
component/e2e
component/frontend
component/infra
component/keycloak
prio/high
prio/low
prio/medium
type/bug
type/chore
type/feature
type/refactor
type/test
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
WompSchmiede/FamilienFeierPlaner#91
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Beschreibung
Es soll eine "Passwort vergessen"-Funktion implementiert werden, die es Benutzern ermoeglicht, ihr Passwort zurueckzusetzen, ohne sich anmelden zu muessen.
Aufgabe
Zunaechst ist zu recherchieren und zu klaeren, welcher Ansatz besser geeignet ist:
Option A: Keycloak-eigene Oberflaeche
Option B: Eigenes Frontend
Entscheidungskriterien
Umsetzung (nach Entscheidung)
Entscheidung: Option A — Keycloak-eigene Oberflaeche
Die Recherche ergibt eine klare Praeferenz fuer die Keycloak-interne Loesung:
parent=keycloak.v2bereits alle benoetigten FTL-Templates bereit (login-reset-password.ftl,login-update-password.ftl, E-Mail-Vorlagen)resetPasswordAllowedaktiviert istUmsetzungsplan (5 Commits)
Commit 1 —
chore(infra): MailHog fuer E-Mail-Tests in Docker-Compose integriertDocker-Compose um MailHog-Service ergaenzen, SMTP-Env-Vars fuer Keycloak, Env-Vars fuer backend-provisioning.
docker-compose.yml.env+.env.exampleSMTP_HOST,SMTP_PORT,SMTP_FROMPROJECT_STATE.mdCommit 2 —
feat(keycloak): Login-Theme auf keycloak.v2 umgestellt + resetPasswordAllowed aktiviertParent auf
keycloak.v2(PatternFly 5), CSS-Klassen migrieren, Realm-Schalter setzen.keycloak/themes/.../login/theme.propertiesparent=keycloak.v2keycloak/themes/.../login/resources/css/login.csspf-c-*→pf-v5-c-*keycloak/realm-export.jsonresetPasswordAllowed: truePROJECT_STATE.mdCommit 3 —
feat(backend): SMTP-Config in Keycloak-Provisioning gesetztNeue Funktion
configureRealmSmtp()inkeycloak-provision.ts, ruft Admin-APIPUT /admin/realms/{realm}auf.backend/src/lib/keycloak-provision.tsconfigureRealmSmtp()+ Aufruf inprovisionKeycloak()PROJECT_STATE.mdCommit 4 —
test(backend): resetPasswordAllowed + SMTP-Provisioning getestetNeue Tests in
keycloak-roles.test.ts, ggf.keycloak-provision.test.ts.backend/src/__tests__/keycloak-roles.test.tsresetPasswordAllowed === truePROJECT_STATE.mdCommit 5 —
docs: Passwort-Vergessen-Flow dokumentiert—closes #91Neuer Abschnitt in Auth-Dokumentation + PROJECT_STATE finalisieren.
docs/design/05-authentifizierung.mdPROJECT_STATE.mdImplementierung abgeschlossen.
Commits:
66e8341— MailHog in Docker-Compose integrierta79e60d— Login-Theme auf keycloak.v2 + resetPasswordAllowed753456a— SMTP-Config in Keycloak-Provisioning gesetzt966f1f4— Tests fuer resetPasswordAllowed02a5843— Dokumentation (closes)Zusammenfassung:
keycloak.v2(PF5) migriertresetPasswordAllowed: trueim Realm aktiviert