Ordonner à Rails d'accepter un certificat auto-signé

Par défaut, l'implémentation OpenSSL dans Rails interdit (et c'est tout à fait normal !) les certificats dont l'identité ne peut être vérifiée. C'est ennuyeux si vous utilisez (par exemple pour des tests ou en développement) des certificats auto-signés car alors impossible de récupérer les données convoitées par exemple sur votre serveur HTTPS ou bien sur votre IMAPS.

Voilà l'erreur que OpenSSL doit retourner dans ce cas :

SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed

Pour contourner ce problème, on pourra inclure le code suivant dans son application :

require 'openssl'
OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE

Pour une application supportée par Rails, on pourra par exemple inclure ceci dans les "initializers", par ex. dans /config/initializers/bypass_ssl_identity_check.rb.