Delphi Indy vérifier le certificat de serveur SSL

J'ai parcouru l'internet et n'ont pas trouvé une solution ou une méthode sur la façon de vérifier le certificat lors de la connexion via le protocole HTTPS à l'aide de TIdHTTP.

J'ai accroché jusqu'à un IdSSLIOHandlerSocketOpenSSL composant que l'IOHandler, définir la SSLModes, etc. mais quand je parcourir pour https://s3.amazonaws.com il ne peut pas vérifier le certificat.

OpenSSL (Indy) donne

"Erreur lors de la connexion avec SSL. SSL3_GET_SERVER_CERTIFICATE: Certificat de vérifier échec"

Les bibliothèques OpenSSL avez correctement chargé (vérifié avec WhichFailedToLoad). Le OnStatusInfo événement écrit ce qui suit:

Statut SSL: "avant de brancher l'initialisation"

Statut SSL: "avant de brancher l'initialisation"

Statut SSL: "SSLv2/v3 écrire client hello"

Statut SSL: "SSLv3 serveur de lecture bonjour"

Statut SSL: "SSLv3 lire certificat de serveur B"

Statut SSL: "SSLv3 lire certificat de serveur B"

Statut SSL: "SSLv3 lire certificat de serveur B"

Et OnVerifyPeer, AOk = False.

Comment puis-je obtenir pour vérifier correctement. Ce qui se passe?

Merci pour la lecture,
Adrian

OriginalL'auteur Adrian | 2012-11-27