TsgcWSAPIServer_WebAuthn › Eventos › OnWebAuthnAuthenticationSuccessful
Dispara ao final de /authenticate/verify quando a assinatura da asserção é válida; a aplicação deve atualizar o contador de assinatura e estabelecer a sessão.
property OnWebAuthnAuthenticationSuccessful: TsgcWebAuthnOnAuthenticationSuccessful;
// TsgcWebAuthnOnAuthenticationSuccessful = procedure(Sender: TObject; const aRequest: TsgcWebAuthn_AuthenticationVerify_Request; const aAuthentication: TsgcWebAuthn_Authentication; var Accept: Boolean) of object
—
Hook final de uma cerimônia de autenticação bem-sucedida. aRequest é o payload de verify enviado pelo cliente; aAuthentication carrega o id de usuário verificado, o registro de credencial correspondente e o novo contador de assinaturas reportado pelo autenticador. Persista o contador de assinaturas atualizado e quaisquer flags de backup/uso e, em seguida, defina Accept como true para que o servidor emita seu token de sessão. Defina Accept como false para abortar no último momento — por exemplo, quando seu motor de risco rejeita o login — caso em que o cliente recebe um erro de autenticação em vez de uma resposta de sucesso.
procedure TForm1.sgcWSAPIServer_WebAuthn1WebAuthnAuthenticationSuccessful(
Sender: TObject; const aRequest: TsgcWebAuthn_AuthenticationVerify_Request;
const aAuthentication: TsgcWebAuthn_Authentication; var Accept: Boolean);
begin
UpdateSignCounter(aAuthentication.CredentialId, aAuthentication.SignCount);
Accept := True;
end;