Das Ziel ist es, die signierte Assertion zu validieren, die vom Browser bereitgestellt wird und nachweist, dass der Benutzer den ursprünglich registrierten privaten Schlüssel besitzt. Dies meldet den Benutzer sicher an. Nachdem der Benutzer mit seinem Authenticator interagiert hat (z. B. Fingerabdruck, Sicherheitsschlüssel), sendet der Browser eine POST-Anfrage mit dem Authentifizierungsergebnis zurück an den Server. Nachfolgend finden Sie ein JSON-Beispiel:
{
"id": "credential-id",
"rawId": "base64url-encoded-credential-id",
"type": "public-key",
"response": {
"clientDataJSON": "base64url",
"authenticatorData": "base64url",
"signature": "base64url",
"userHandle": "optional"
}
}
Wenn der Server diese Anfrage am konfigurierten Endpunkt (z. B. /sgcWebAuthn/Authentication/Verify) empfängt, muss er die folgenden Schritte validieren:
Wenn alle Validierungen korrekt sind, ist die Authentifizierung erfolgreich und das Ereignis OnWebAuthnAuthenticationSuccessful wird aufgerufen.
Wenn eine Prüfung fehlschlägt, wird das Ereignis OnWebAuthnAuthenticationError mit dem Grund für den Fehler aufgerufen.