TsgcWSAPIServer_WebAuthn › Events › OnWebAuthnRegistrationValidateCertificate
Viene generato durante /register/verify per consentire all'applicazione di validare la catena di certificati dell'attestazione (ad es. contro un FIDO MDS memorizzato nella cache) e di sovrascrivere il controllo integrato.
property OnWebAuthnRegistrationValidateCertificate: TsgcWebAuthnOnRegistrationValidateCertificate;
// TsgcWebAuthnOnRegistrationValidateCertificate = procedure(Sender: TObject; const aRequest: TsgcWebAuthn_RegistrationVerify_Request; const aValidate: TsgcWebAuthnValidateAttestationStatement; var Handled: Boolean) of object
—
Consente all'applicazione di prendere il controllo della validazione dell'attestation statement. aValidate espone l'attestazione analizzata (formato, firma, AAGUID, catena x5c) e consente al gestore di contrassegnarla come valida o non valida. Impostare Handled su true per indicare al server che il codice ha completamente validato (o rifiutato) l'attestazione — il validatore integrato viene quindi ignorato. Lasciare Handled su false per consentire l'esecuzione della logica predefinita dopo l'hook, utile quando si desidera applicare solo un criterio aggiuntivo (CA pinning, allowlist di autenticatori da MDS) oltre ai controlli standard.
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;