TsgcWebSocketProxyServer › Gebeurtenissen › OnSSLVerifyPeer
Geactiveerd wanneer VerifyCertificate is ingeschakeld en een downstream-client een certificaat presenteert dat moet worden geaccepteerd of geweigerd.
property OnSSLVerifyPeer: TsgcOnSSLVerifyPeer;
// TsgcOnSSLVerifyPeer = procedure(Sender: TObject; Certificate: TIdX509; AOk: Boolean; ADepth, AError: Integer; var Accept: Boolean) of object
—
Wanneer SSLOptions.VerifyCertificate True is en een downstream client een certificaat aanlevert tijdens de TLS-handshake, wordt OnSSLVerifyPeer eenmaal per certificaat in de keten geactiveerd. De parameter Certificate stelt de X.509-gegevens beschikbaar, AOk bevat het verificatieresultaat van de TLS-laag, ADepth is de positie in de keten (0 voor het blad), en AError is de foutcode wanneer verificatie mislukt. Stel Accept in op True om het certificaat te vertrouwen of op False om de verbinding te verbreken. De gebeurtenis wordt niet geactiveerd wanneer de client geen certificaat presenteert; om een clientcertificaat af te dwingen, stelt u SSLOptions.VerifyCertificate_Options.FailIfNoCertificate in op True.
function OnSSLVerifyPeerEvent(Sender: TObject; Certificate: TIdX509;
AOk: Boolean; ADepth, AError: Integer; var Accept: Boolean);
begin
// ... validate the certificate
if Certificate_OK then
Accept := True
else
Accept := False;
end;