WebAuthn Authentication | Request

Quando um usuário tenta fazer login, o navegador envia uma requisição ao servidor solicitando as opções de autenticação (também chamadas de "assertion options").

 

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

 

Esta requisição permite que o servidor:

 

 

Quando o Componente Servidor WebAuthn recebe esta requisição, o que normalmente é feito através de uma requisição HTTPS POST do navegador para um endpoint do servidor (por exemplo, /sgcWebAuthn/Authentication/Options), o evento OnWebAuthnAuthenticationOptionsRequest é chamado, para que você possa adicionar as credenciais associadas ao nome de usuário (se houver).

 


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;