TsgcWebSocketHTTPServerGebeurtenissen › OnSSLVerifyPeer

OnSSLVerifyPeer Gebeurtenis

Wordt geactiveerd wanneer VerifyCertificate ingeschakeld is en de client een certificaat presenteert dat moet worden geaccepteerd of geweigerd.

Syntaxis

__property TsgcOnSSLVerifyPeer OnSSLVerifyPeer;
// typedef void __fastcall (__closure *TsgcOnSSLVerifyPeer)(TObject * Sender, TIdX509 * Certificate, bool AOk, int ADepth, int AError, bool &Accept);

Standaardwaarde

Opmerkingen

Wanneer SSLOptions.VerifyCertificate True is en de client een certificaat levert tijdens de TLS-handshake, wordt OnSSLVerifyPeer eenmaal per certificaat in de keten gegenereerd. De parameter Certificate geeft de X.509-gegevens vrij, 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 False om de verbinding af te breken. 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.

Voorbeeld


void OnSSLVerifyPeer(TObject *Sender, TIdX509 *Certificate, bool AOk,
  int ADepth, int AError, bool &Accept)
{
  // ... validate the certificate
  if (Certificate_OK)
    Accept = true;
  else
    Accept = false;
}

Terug naar Events