Par défaut, le serveur ne vérifie pas les certificats pairs. Pour configurer le serveur afin de vérifier les certificats client, suivez les étapes suivantes :
Gérez l'événement OnSSLVerifyPeer et implémentez le code suivant pour être notifié chaque fois qu'un client se connecte avec un certificat.
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;
Notez que l'événement OnSSLVerifyPeer est appelé uniquement si le client fournit un certificat, si un client ne fournit pas de certificat, l'événement n'est pas déclenché.
Vous pouvez configurer le serveur pour n'autoriser que les connexions SSL utilisant un certificat. Pour ce faire, définissez la propriété suivante :
Si le client ne fournit pas de certificat, la connexion sera fermée lors du handshake SSL.