WebAuthn Übersicht
WebAuthn Passkey Authentication
Abschnitt betitelt „WebAuthn Passkey Authentication“WebAuthn ermöglicht passwortlose Authentifizierung mit Passkeys - sicher, schnell und benutzerfreundlich.
Was sind Passkeys?
Abschnitt betitelt „Was sind Passkeys?“Passkeys sind moderne, sichere Alternativen zu Passwörtern. Sie basieren auf dem WebAuthn-Standard und ermöglichen Authentifizierung mit:
- Biometrische Daten: Fingerabdruck, Face ID, Touch ID
- Device PIN: Geräte-Entsperrcode
- Hardware Security Keys: YubiKey, Titan Security Key, etc.
Vorteile von Passkeys
Abschnitt betitelt „Vorteile von Passkeys“✅ Sicher: Phishing-resistent, keine gestohlenen Passwörter
✅ Schnell: Ein Touch oder Blick genügt
✅ Einfach: Keine Passwörter merken
✅ Multi-Device: Mehrere Passkeys pro User
✅ Privat: Biometrische Daten verlassen nie das Gerät
Features
Abschnitt betitelt „Features“- ✅ Sichere Registrierung - Passkeys mit Biometrie oder Security Keys registrieren
- ✅ Schnelle Authentifizierung - Mit einem Touch oder Blick anmelden
- ✅ Multi-Device Support - Mehrere Passkeys pro User (Laptop, Handy, Security Key)
- ✅ Usernameless Flow - Optionales schnelles Anmelden ohne Username
- ✅ Credential Management - Passkeys auflisten und entfernen
- ✅ KV Storage - Sichere Speicherung in Cloudflare KV
- ✅ JWT Integration - Nahtlose Integration mit OAuth-Token-System
Wie funktioniert WebAuthn?
Abschnitt betitelt „Wie funktioniert WebAuthn?“Registrierung
Abschnitt betitelt „Registrierung“1. User → Server: Möchte Passkey registrieren2. Server → User: Challenge (zufälliger Token)3. User Device: Erstellt Keypair (öffentlich/privat)4. User Device → Server: Öffentlicher Key + Signatur5. Server: Verifiziert und speichert öffentlichen KeyAuthentifizierung
Abschnitt betitelt „Authentifizierung“1. User → Server: Möchte sich anmelden2. Server → User: Challenge (zufälliger Token)3. User Device: Signiert Challenge mit privatem Key4. User Device → Server: Signatur5. Server: Verifiziert Signatur mit öffentlichem Key6. Server → User: JWT Token (erfolgreich angemeldet)Architektur
Abschnitt betitelt „Architektur“WebAuthn Flow
Abschnitt betitelt „WebAuthn Flow“-
Passkey Registrierung:
- User meldet sich mit OAuth an
- Fügt Passkey über
/webauthn/add-passkeyhinzu - Passkey wird in KV gespeichert
-
Passkey Authentifizierung:
- User wählt Passkey
- Authentifiziert sich mit Biometrie/PIN
- Erhält JWT Token
Datenspeicherung
Abschnitt betitelt „Datenspeicherung“Passkeys werden in Cloudflare KV gespeichert:
{ "userId": "github:123456", "credentials": [ { "credentialId": "base64url...", "publicKey": "base64url...", "counter": 0, "deviceName": "MacBook Pro Touch ID", "createdAt": "2024-01-01T00:00:00Z" } ]}Browser-Kompatibilität
Abschnitt betitelt „Browser-Kompatibilität“WebAuthn wird von modernen Browsern unterstützt:
| Browser | Version | Platform |
|---|---|---|
| Chrome | 67+ | Windows, macOS, Linux, Android |
| Edge | 18+ | Windows, macOS |
| Firefox | 60+ | Windows, macOS, Linux |
| Safari | 13+ | macOS, iOS |
Sicherheitshinweise
Abschnitt betitelt „Sicherheitshinweise“Siehe Sicherheitshinweise für Details.
Erste Schritte
Abschnitt betitelt „Erste Schritte“- Passkey Registrierung - Passkeys für User registrieren
- Passkey Authentifizierung - Mit Passkeys anmelden
- WebAuthn Client - Client-Library verwenden
Nächste Schritte
Abschnitt betitelt „Nächste Schritte“- Registrierung - Passkey-Registrierung implementieren
- Authentifizierung - Passkey-Login implementieren
- Sicherheit - Sicherheitshinweise beachten