Ordonner à Rails d'accepter un certificat auto-signé
By Pierre-Alain B on Thursday, March 27 2014, 17:19 - Permalink
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.