TsgcWSAPIServer_WebAuthn › Eventos › OnWebAuthnRegistrationValidateCertificate
Disparado durante /register/verify para permitir que a aplicação valide a cadeia de certificados de atestação (por exemplo contra um FIDO MDS em cache) e substitua a verificação integrada.
property OnWebAuthnRegistrationValidateCertificate: TsgcWebAuthnOnRegistrationValidateCertificate;
// TsgcWebAuthnOnRegistrationValidateCertificate = procedure(Sender: TObject; const aRequest: TsgcWebAuthn_RegistrationVerify_Request; const aValidate: TsgcWebAuthnValidateAttestationStatement; var Handled: Boolean) of object
—
Permite que a aplicação assuma a validação do attestation statement. aValidate expõe o attestation parseado (formato, assinatura, AAGUID, cadeia x5c) e permite que o handler o marque como válido ou inválido. Defina Handled como true para informar ao servidor que seu código validou (ou rejeitou) totalmente o statement — o validador integrado é então ignorado. Deixe Handled como false para que a lógica padrão seja executada após o hook, o que é útil quando você quer apenas impor uma política extra (CA pinning, allowlist de authenticator do MDS) sobre as verificações padrão.
procedure TForm1.sgcWSAPIServer_WebAuthn1WebAuthnRegistrationValidateCertificate(
Sender: TObject; const aRequest: TsgcWebAuthn_RegistrationVerify_Request;
const aValidate: TsgcWebAuthnValidateAttestationStatement;
var Handled: Boolean);
begin
if IsAAGUIDBlocked(aValidate.AAGUID) then
begin
aValidate.Valid := False;
Handled := True;
end;
end;