TsgcWebSocketClientEventos › OnSChannelVerifyPeer

OnSChannelVerifyPeer Evento

Se dispara cuando SChannel es el IOHandler TLS para que la aplicación pueda verificar el certificado del servidor.

Sintaxis

property OnSChannelVerifyPeer: TsgcSChannelOnVerifyPeerEvent;
// TsgcSChannelOnVerifyPeerEvent = procedure(Sender: TObject; const aContext: TsgcSChannelContext; aError: TsgcSChannelVerifyError; var Accept: Boolean) of object

Valor Predeterminado

Observaciones

Cuando TLSOptions.IOHandler es iohSChannel, este evento se genera durante el protocolo de enlace TLS para que la aplicación pueda inspeccionar el certificado del servidor y decidir si acepta la conexión. El parámetro aContext expone la cadena de certificados y los datos de contexto de SChannel; aError informa del resultado de la validación devuelto por SChannel (por ejemplo, caducado, raíz no de confianza, discrepancia de nombre). Establezca Accept en True para continuar el protocolo de enlace o en False para abortar la conexión. Cuando se utiliza OpenSSL en lugar de SChannel, use OnSSLVerifyPeer.

Este evento solo se dispara cuando TLSOptions.VerifyCertificate es True. Su valor predeterminado es False, por lo que un cliente que conserve la configuración predeterminada nunca lo genera y acepta cualquier certificado del servidor sin validarlo; asignar OnSChannelVerifyPeer por sí solo no activa la validación.

Ejemplo


procedure OnSChannelVerifyPeer(Sender: TObject; const aContext: TsgcSChannelContext;
  aError: TsgcSChannelVerifyError; var Accept: Boolean);
begin
  // accept the certificate only if SChannel reports no validation error
  Accept := aError = schvOK;
end;

Volver a Eventos