Passkeys (WebAuthn)
Passkey bietet eine sicherere und benutzerfreundlichere Alternative zu herkömmlichen Passwörtern. Durch die Verwendung von Public-Key-Kryptografie erhöht Passkey die Sicherheit, indem es das Gerät des Benutzers, die Service-Domain und die Benutzer-ID miteinander verknüpft und so Phishing- und Passwortangriffe effektiv verhindert. Es ist mit verschiedenen Geräten oder Browsern kompatibel und ermöglicht es den Nutzern, biometrische und hardwarebasierte Sicherheitsfunktionen für eine bequeme Authentifizierung zu verwenden. WebAuthn stellt die API bereit, mit der Websites Passkeys implementieren können.
Logto unterstützt Passkeys (WebAuthn) sowohl für Multi-Faktor-Authentifizierung (MFA) als auch für Passkey-Anmeldung. Das zugrundeliegende WebAuthn-Zertifikat kann je nach Mandantenkonfiguration in beiden Fällen wiederverwendet werden.
Konzepte
Kunden kennen meist Passkeys und nicht WebAuthn. Was ist also die Beziehung zwischen ihnen und wie werden sie verwendet? Lass uns diese Konzepte erkunden:
- Passkeys: Ein Passkey ist ein FIDO-basierter, phishing-resistenter Berechtigungsnachweis zur Ablösung von Passwörtern. Er nutzt asymmetrische Public-Key-Kryptografie für erhöhte Sicherheit. Es kann sich um Hardware-Tokens oder Sicherheitsschlüssel handeln, wie USB- oder Bluetooth-Geräte. Da „Passkeys“ die Authentifizierungsmethode ist, die den Nutzern angezeigt wird, sollte sie im Produkt-Client verwendet werden.
- WebAuthn: Dies ist eine von W3C und FIDO Alliance entwickelte JavaScript-API, die Webanwendungen die Authentifizierung nach FIDO2-Standards ermöglicht. Passkeys ist eine der Authentifizierungsmethoden, die WebAuthn unterstützt. In der Logto-Konsole bezeichnen wir diese Integration professionell als „WebAuthn“.
WebAuthn bietet verschiedene Authentifikatoren, aus denen Nutzer wählen können, verfügbar in zwei Typen für lokale und Cloud-Nutzung:
- Plattform-Authentifikator (Interner Authentifikator): Er ist an ein einzelnes und spezifisches Gerätebetriebssystem gebunden, wie Computer, Laptop, Handy oder Tablet, mit dem sich der Nutzer anmeldet. Er funktioniert ausschließlich auf dem Gerät zur Autorisierung, z. B. über biometrische Verfahren oder einen Gerätecode, und ist daher eine schnelle Authentifizierungsmethode. Zum Beispiel: iCloud-Schlüsselbund, verifiziert durch Touch ID, Face ID oder Gerätecode auf macOS oder iOS; Windows Hello, verifiziert durch Gesichtserkennung, Fingerabdruck oder PIN.
- Roaming-Authentifikator (Externer Authentifikator, plattformübergreifender Authentifikator): Dies ist ein separates, tragbares Gerät oder eine Softwareanwendung, wie ein Hardware-Sicherheitsschlüssel oder ein Smartphone. Das Gerät sollte per USB verbunden oder NFC bzw. Bluetooth aktiviert sein. Der Roaming-Authentifikator ist nicht auf ein einzelnes Gerät oder einen Browser beschränkt und bietet somit mehr Flexibilität.
Um tiefer in die Prinzipien und Abläufe von WebAuthn einzutauchen, kannst du unsere Blogbeiträge lesen: WebAuthn und Passkeys 101 und Wissenswertes vor der Integration von WebAuthn.
Passkey-Überprüfung für MFA konfigurieren
- Navigiere zu Konsole > Multi-Faktor-Authentifizierung
- Aktiviere den Faktor „Passkeys (WebAuthn)“. Es wird empfohlen, Passkeys in Kombination mit anderen MFA-Faktoren (TOTP, SMS, Backup-Codes) zu verwenden, um die Abhängigkeit von einem einzelnen Faktor zu reduzieren.
- Konfiguriere deine bevorzugte MFA-Richtlinie (erforderlich vs. optional)
- Speichere deine Konfigurationsänderungen
Wenn sich derselbe Benutzer mit Passkey-Anmeldung anmeldet, überspringt Logto den separaten MFA-Überprüfungsschritt. Eine Passkey-Anmeldung erfüllt bereits die WebAuthn-basierte Überprüfungsanforderung.
Es ist wichtig, einige Einschränkungen bei der Implementierung von WebAuthn zu beachten:
- Plattform- und Browser-Einschränkung: Beachte, dass Logto derzeit keine WebAuthn-Unterstützung für native Anwendungen bietet. Außerdem hängt die Verfügbarkeit von WebAuthn-Authentifikatoren von den Fähigkeiten des Browsers und des Geräts ab (Liste prüfen). Daher ist WebAuthn nie die einzige Option für die Implementierung von Multi-Faktor-Authentifizierung (MFA), andernfalls kannst du steuern, welche Browser und Geräte auf dein Produkt zugreifen können.
- Domain-Einschränkung: Das Ändern der Domain kann die Benutzerüberprüfung über bestehende WebAuthn-Konten verhindern. Passkeys sind an die spezifische Domain der aktuellen Webseite gebunden und können nicht domainsübergreifend verwendet werden.
- Geräte-Einschränkung: Der Verlust des Geräts kann zum Verlust des Zugriffs auf das Konto führen, insbesondere bei Nutzern, die auf „Dieses Gerät“-Plattform-Authentifikatoren setzen. Um den Authentifizierungszugang zu verbessern, empfiehlt es sich, den Nutzern mehr als einen Authentifizierungsfaktor bereitzustellen.
Passkey-Verwaltung konfigurieren
Du kannst die Account API verwenden, um benutzerdefinierte Kontoverwaltungsoberflächen zu erstellen, in denen Nutzer ihre Passkeys hinzufügen, anzeigen, umbenennen und entfernen können. Dies ist nützlich für personalisierte Account-Center und ermöglicht Backup-Szenarien über mehrere Geräte hinweg.
Für detaillierte Implementierungsschritte und API-Endpunkte siehe Kontoeinstellungen per Account API.
Passkey-Einrichtungsabläufe
Die Passkeys-Spezifikation verlangt, dass Nutzer aktiv auf den Button der aktuellen Seite klicken, um die Authentifizierungskomponente zu starten. Das bedeutet, dass sowohl im Einrichtungs- als auch im Überprüfungsablauf die Nutzer auf die Landingpage weitergeleitet werden sollten, um WebAuthn zu starten.
Passkey-Überprüfungsabläufe
Wenn Nutzer mehrere MFA-Methoden einschließlich Passkeys eingerichtet haben, wird Passkey aufgrund seiner erhöhten Sicherheit und Bequemlichkeit als empfohlene MFA-Überprüfungsmethode auf dem ersten Bildschirm angezeigt. Nutzer können durch Klicken auf „Andere Methode zur Überprüfung ausprobieren“ zu anderen Methoden wechseln. Lies MFA konfigurieren, um mehr zu erfahren.
Wenn der Nutzer die Anmeldung mit Passkey-Anmeldung abschließt, anstatt einen anderen ersten Faktor einzugeben, wird Logto anschließend keinen zusätzlichen MFA-Schritt verlangen. Das liegt daran, dass der Passkey selbst als WebAuthn-MFA-Faktor behandelt wird.
Verwandte Ressourcen
Wissenswertes vor der Integration von WebAuthn
WebAuthn und Passkey 101