Wenn ein Benutzer versucht, sich anzumelden, sendet der Browser eine Anfrage an den Server, in der er die Authentifizierungsoptionen anfordert (auch "Assertion Options" genannt).
{
"username": "alice@example.com"
}
Diese Anfrage ermöglicht es dem Server:
Wenn die WebAuthn-Server-Komponente diese Anforderung empfängt — dies erfolgt typischerweise über eine HTTPS-POST-Anforderung vom Browser an einen Server-Endpunkt (z. B. /sgcWebAuthn/Authentication/Options) — wird das Ereignis OnWebAuthnAuthenticationOptionsRequest aufgerufen, sodass Sie die mit dem Benutzernamen verknüpften Credentials (falls vorhanden) hinzufügen können.
procedure OnWebAuthnAuthenticationOptionsRequest(
Sender: TObject; const aRequest:
TsgcWebAuthn_AuthenticationOptions_Request; var CredentialRecords:
TsgcWebAuthn_CredentialRecords; var Accept: Boolean);
begin
if UserExistsInDB(aRequest.Username) then
begin
While not EOF do
begin
CredentialRecords.AddCredentialRecordFromJSON(RecordFromDB);
Next;
end;
end;
end;