V 2.2.0 Anmeldung per Passkey (WebAuthn)
Zusätzlich zu Benutzername/Passwort ist die Anmeldung per Passkey möglich (Fingerabdruck, Gesichtserkennung, Geräte-PIN). Das Passwort bleibt als Alternative bestehen. - lib/webauthn.ts kapselt @simplewebauthn/server, RP-Config über RP_ID/RP_ORIGIN/RP_NAME, Challenge in kurzlebigem httpOnly-Cookie - lib/passkeys.ts speichert Credentials je Benutzer in der MySQL-Tabelle passkeys und legt sie beim ersten Zugriff an - API unter app/api/passkey/: register (Session nötig), authenticate (öffentlich, in proxy.ts von der Session-Pflicht ausgenommen), GET/DELETE zum Verwalten - Neuer Tab "Einstellungen" zum Registrieren und Entfernen von Passkeys - Button "Mit Passkey anmelden" auf der Login-Seite Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -41,10 +41,22 @@ Passen Sie die Werte in der `.env`-Datei an:
|
||||
DB_USER=root
|
||||
DB_PASS=IhrMySQLPasswort
|
||||
DB_NAME=RXF
|
||||
|
||||
# Passkeys (WebAuthn): Host bzw. volle URL, unter der die App erreichbar ist
|
||||
RP_ID=werte.fuerst-stuttgart.de
|
||||
RP_ORIGIN=https://werte.fuerst-stuttgart.de
|
||||
RP_NAME=Werte-Log
|
||||
```
|
||||
|
||||
**Wichtig**: Die `.env`-Datei enthält sensible Daten und wird NICHT ins Git-Repository committed!
|
||||
|
||||
**Hinweis zu Passkeys**: `RP_ID` muss exakt dem Hostnamen entsprechen (ohne `https://`
|
||||
und ohne Port), `RP_ORIGIN` der vollen URL. Passen die Werte nicht zur aufgerufenen
|
||||
Adresse, schlägt die Passkey-Anmeldung fehl. Bereits registrierte Passkeys werden bei
|
||||
einer Änderung von `RP_ID` ungültig. WebAuthn setzt HTTPS voraus (via Traefik).
|
||||
Die Tabelle `passkeys` legt die Anwendung beim ersten Zugriff selbst an — hat der
|
||||
DB-Benutzer keine CREATE-Rechte, das SQL aus `create_table.sql` manuell ausführen.
|
||||
|
||||
### 3. Docker Images bauen und Container starten
|
||||
|
||||
```bash
|
||||
|
||||
Reference in New Issue
Block a user