Gdy użytkownik próbuje się zalogować, przeglądarka wysyła do serwera żądanie opcji uwierzytelniania (zwanych również „opcjami asercji").
{
"username": "alice@example.com"
}
To żądanie umożliwia serwerowi:
Gdy składnik WebAuthn Server odbiera to żądanie (zazwyczaj wysyłane przez przeglądarkę jako żądanie HTTPS POST do punktu końcowego serwera, np. /sgcWebAuthn/Authentication/Options), wywoływane jest zdarzenie OnWebAuthnAuthenticationOptionsRequest, w którym można dodać poświadczenia skojarzone z nazwą użytkownika (jeśli istnieją).
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;