WebAuthn Authentication | Request

Cuando un usuario intenta iniciar sesión, el navegador envía una solicitud al servidor pidiendo las opciones de autenticación (también llamadas "assertion options").

 

{
"username": "alice@example.com"
}

 

Esta solicitud permite al servidor:

 

 

Cuando el componente servidor WebAuthn recibe esta solicitud, que normalmente se realiza mediante una solicitud HTTPS POST desde el navegador a un endpoint del servidor (p. ej., /sgcWebAuthn/Authentication/Options), se invoca el evento OnWebAuthnAuthenticationOptionsRequest, de modo que puede añadir las credenciales asociadas al nombre de usuario (si las hay).

 


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;