Passwörter sind das schwächste Glied in der Kontosicherheit. Sie können gephisht, geleakt, wiederverwendet oder vergessen werden. Deshalb haben wir Unterstützung für WebAuthn Passkeys hinzugefügt - eine phishing-resistente, passwortlose Authentifizierungsmethode, die sowohl sicherer als auch bequemer ist.
Was sind Passkeys?
Passkeys sind kryptografische Anmeldedaten, die auf Ihrem Gerät (Smartphone, Laptop, Sicherheitsschlüssel) gespeichert sind und Passwörter zur Authentifizierung ersetzen. Sie verwenden den WebAuthn-Standard (Teil von FIDO2) und bieten mehrere Vorteile:
- Phishing-resistent - Passkeys sind an die Domain der Website gebunden und können daher nicht auf gefälschten Seiten verwendet werden
- Keine Geheimnisse zum Leaken - Nur der öffentliche Schlüssel wird auf dem Server gespeichert
- Gerätegebunden - Der private Schlüssel verlässt nie Ihr Gerät
- Biometrisch geschützt - Typischerweise durch Face ID, Touch ID oder Windows Hello gesichert
- Geräteübergreifende Synchronisierung - Moderne Plattformen synchronisieren Passkeys über iCloud-, Google- oder Microsoft-Konten zwischen Geräten
Unsere Implementierung
Wir haben die WebAuthn Passkey-Unterstützung in unseren bestehenden django-allauth Authentifizierungs-Stack integriert und stellen sowohl Web- als auch mobile API-Endpunkte bereit.
Registrierungsablauf
Wenn ein Benutzer einen neuen Passkey registriert, funktioniert der Ablauf folgendermaßen:
- Der Client fordert Registrierungsoptionen vom Server an
- Der Server generiert eine Challenge mit Benutzer- und Relying-Party-Informationen
- Die WebAuthn-API des Browsers fordert den Benutzer auf (Biometrie oder Sicherheitsschlüssel)
- Der Client sendet die Anmeldedaten zurück an den Server
- Der Server verifiziert und speichert den öffentlichen Schlüssel
| |
Authentifizierungsablauf
Für die Zwei-Faktor-Authentifizierung mit einem Passkey:
- Der Benutzer schließt die primäre Authentifizierung ab (Benutzername/Passwort oder Social Login)
- Der Server gibt eine Challenge zurück zur WebAuthn-Verifizierung
- Der Browser fordert den Passkey an (biometrische Berührung)
- Die Anmeldedaten werden verifiziert gegen den gespeicherten öffentlichen Schlüssel
- Der Benutzer ist vollständig authentifiziert
| |
Passkey-Verwaltung
Benutzer können ihre registrierten Passkeys verwalten:
- Alle Passkeys auflisten mit Registrierungsdatum und letzter Nutzung
- Passkeys umbenennen zur einfacheren Identifizierung (z.B. “iPhone”, “MacBook”)
- Passkeys löschen (mit Schutz gegen das Entfernen des letzten Authentifikators)
| |
API-Endpunkte
Unsere REST-API bietet vollständige WebAuthn-Unterstützung für die mobile App:
| Endpunkt | Methode | Beschreibung |
|---|---|---|
/api/webauthn/register/options/ | GET | Registrierungs-Challenge abrufen |
/api/webauthn/register/complete/ | POST | Registrierung abschließen |
/api/webauthn/authenticate/options/ | GET | Authentifizierungs-Challenge abrufen |
/api/webauthn/verify/ | POST | Anmeldedaten für 2FA verifizieren |
/api/webauthn/ | GET | Registrierte Passkeys auflisten |
/api/webauthn/<id>/ | PATCH | Einen Passkey umbenennen |
/api/webauthn/<id>/ | DELETE | Einen Passkey löschen |
Sicherheitsüberlegungen
Wiederherstellungscodes
Wenn ein Benutzer seinen ersten Authentifikator registriert (Passkey oder TOTP), generieren wir automatisch Wiederherstellungscodes. Diese Einmalcodes können verwendet werden, wenn alle anderen Authentifizierungsmethoden nicht verfügbar sind:
| |
Aussperrungsschutz
Benutzer können ihren letzten Passkey nicht löschen, wenn sie dadurch ohne jegliche Zwei-Faktor-Authentifizierungsmethode bleiben würden:
| |
Überwachung
Wir verfolgen die Passkey-Nutzung über Datadog-Metriken zur Sicherheitsüberwachung:
| |
Browser-Unterstützung
WebAuthn wird in allen modernen Browsern unterstützt:
- Chrome 67+
- Firefox 60+
- Safari 13+
- Edge 79+
- Mobile Chrome, Safari, Firefox
Für ältere Browser können Benutzer weiterhin TOTP (Authenticator-Apps) oder Wiederherstellungscodes verwenden.
Das Benutzererlebnis
Das Hinzufügen eines Passkeys dauert nur Sekunden:
- Gehen Sie zu Einstellungen → Sicherheit → Zwei-Faktor-Authentifizierung
- Klicken Sie auf Passkey hinzufügen
- Benennen Sie Ihr Gerät (z.B. “iPhone 15”)
- Authentifizieren Sie sich mit Face ID / Touch ID / Windows Hello
- Fertig! Ihr Passkey ist registriert
Zukünftige Anmeldungen erfordern nur eine biometrische Bestätigung - kein Eingeben von Passwörtern oder Kopieren von Codes aus Authenticator-Apps mehr.
Warum wir uns für Passkeys entschieden haben
| Methode | Phishing-Risiko | Benutzererfahrung | Wiederherstellung |
|---|---|---|---|
| Passwörter | Hoch | Schlecht (vergessen, schwach) | E-Mail-Zurücksetzung |
| SMS 2FA | Mittel (SIM-Swap) | Okay | Telefonnummer |
| TOTP-Apps | Niedrig | Manuelle Codeeingabe | Backup-Schlüssel |
| Passkeys | Sehr niedrig | Ausgezeichnet | Wiederherstellungscodes |
Passkeys repräsentieren die Zukunft der Authentifizierung. Sie werden bereits von Apple-, Google- und Microsoft-Plattformen unterstützt, was sie für fast alle unsere Benutzer zugänglich macht.
Bereit für passwortlose Anmeldung? Aktivieren Sie Passkeys in Ihren Sicherheitseinstellungen!