TsgcWSAPIServer_WebAuthn › イベント › OnWebAuthnRegistrationValidateCertificate
/register/verify 中に発生し、アプリケーションが証明書チェーン(例: キャッシュされた FIDO MDS に対して)を検証し、組み込みチェックをオーバーライドできます。
property OnWebAuthnRegistrationValidateCertificate: TsgcWebAuthnOnRegistrationValidateCertificate;
// TsgcWebAuthnOnRegistrationValidateCertificate = procedure(Sender: TObject; const aRequest: TsgcWebAuthn_RegistrationVerify_Request; const aValidate: TsgcWebAuthnValidateAttestationStatement; var Handled: Boolean) of object
—
アプリケーションがアテステーションステートメントの検証を引き継ぐことを可能にします。aValidateは解析されたアテステーション(形式、署名、AAGUID、x5cチェーン)を公開し、ハンドラがそれを有効または無効としてマークできるようにします。あなたのコードがステートメントを完全に検証(または拒否)したことをサーバーに伝えるには、Handledをtrueに設定してください。組み込みのバリデーターはスキップされます。標準のチェックに加えて追加のポリシー(CAピンニング、MDSからの認証器の許可リスト)を強制したいだけの場合に役立つ、デフォルトのロジックをフックの後に実行させるには、Handledをfalseのままにしてください。
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;