TsgcWebSocketProxyServer › Événements › OnSSLVerifyPeer
Se déclenche lorsque VerifyCertificate est activé et qu'un client en aval présente un certificat à accepter ou rejeter.
property OnSSLVerifyPeer: TsgcOnSSLVerifyPeer;
// TsgcOnSSLVerifyPeer = procedure(Sender: TObject; Certificate: TIdX509; AOk: Boolean; ADepth, AError: Integer; var Accept: Boolean) of object
—
Lorsque SSLOptions.VerifyCertificate est True et qu'un client en aval fournit un certificat lors de la poignée de main TLS, OnSSLVerifyPeer est déclenché une fois par certificat dans la chaîne. Le paramètre Certificate expose les données X.509, AOk contient le résultat de la vérification de la couche TLS, ADepth est la position dans la chaîne (0 pour la feuille) et AError est le code d'erreur en cas d'échec de la vérification. Définissez Accept à True pour faire confiance au certificat ou False pour abandonner la connexion. L'événement n'est pas déclenché si le client ne présente pas de certificat ; pour imposer un certificat client, définissez SSLOptions.VerifyCertificate_Options.FailIfNoCertificate à 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;