TsgcWSAPIServer_WebAuthn › Eventos › OnWebAuthnAuthenticationOptionsRequest
Se activa al inicio de /authenticate/begin; la aplicación debe devolver la lista de credenciales registradas para el usuario para que el servidor pueda construir PublicKeyCredentialRequestOptions.
property OnWebAuthnAuthenticationOptionsRequest: TsgcWebAuthnOnAuthenticationOptionsRequest;
// TsgcWebAuthnOnAuthenticationOptionsRequest = procedure(Sender: TObject; const aRequest: TsgcWebAuthn_AuthenticationOptions_Request; var CredentialRecords: TsgcWebAuthn_CredentialRecords; var Accept: Boolean) of object
—
Primer gancho de la ceremonia de autenticación (WebAuthn navigator.credentials.get()). aRequest contiene el nombre de usuario (o vacío para flujos de credenciales descubribles) proporcionado por el cliente. El manejador debe rellenar CredentialRecords con las credenciales previamente almacenadas para el usuario — el servidor las utiliza para construir la lista allowCredentials, para buscar la clave pública durante la verificación y para aplicar sugerencias de transporte. Establezca Accept en false para denegar la ceremonia (por ejemplo, cuando el usuario está bloqueado o es desconocido).
procedure TForm1.sgcWSAPIServer_WebAuthn1WebAuthnAuthenticationOptionsRequest(
Sender: TObject; const aRequest: TsgcWebAuthn_AuthenticationOptions_Request;
var CredentialRecords: TsgcWebAuthn_CredentialRecords; var Accept: Boolean);
begin
CredentialRecords := LoadUserCredentials(aRequest.User.Name);
Accept := Length(CredentialRecords) > 0;
end;