TsgcWebSocketServer | 服务器验证证书

默认情况下,服务器不验证对端证书。要配置服务器验证客户端证书,请执行以下步骤:

 

  1. 将属性 SSLOptions.VerifyCertificate 设置为 true

 

处理 OnSSLVerifyPeer 事件并实现以下代码,以便在每次客户端使用证书连接时收到通知。

 


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;

请注意,OnSSLVerifyPeer 事件仅在客户端提供证书时调用,若客户端未提供证书,则不会触发该事件。

 

您可以将服务器配置为仅允许使用证书的 SSL 连接。为此,请设置以下属性:

 

 

如果客户端未提供证书,连接将在 SSL 握手时关闭。