Ruby - jiraSOAP - Désactiver la vérification du certificat OpenSSL

How do I turn off certificate verification in a gem like jiraSOAP. the verification is inbuilt, but I really don't need that verification since the server & client are my properties. It should be doable to tweak the gem to stop this verification.

https://github.com/Marketcircle/jiraSOAP/blob/master/lib /jiraSOAP.rb

Cette erreur de vérification de cert m'empêche de passer à mon projet. J'ai essayé d'autres solutions à partir des forums, pour mettre à niveau mon /etc/ssl/cert , en ajoutant OpenSSL :: SSL :: VERIFY_PEER = OpenSSL :: SSL :: VERIFY_NONE à mon projet. Mais aucun d'eux n'a travaillé.

require 'jiraSOAP'
jira = JIRA::JIRAService.new "https://server/rpc/soap/jirasoapservice-v2?wsdl"
jira.login username, password


/usr/local/rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/net/http.rb:799:in `connect': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::SSL::SSLError)
0
" Je n'ai vraiment pas besoin de cette vérification puisque le serveur et le client sont mes propriétés ". La vérification du certificat (avec la vérification du nom d'hôte) est là pour s'assurer que votre client parle effectivement au serveur prévu. Le fait qu'ils soient votre propriété n'est pas pertinent: vous voulez toujours vous assurer que vous communiquez bien avec votre serveur.
ajouté l'auteur Bruno, source

1 Réponses

J'ai été capable de le résoudre en modifiant la gemme Handsoap pour ignorer la vérification de cert seulement pour mon hôte.

Fichier à modifier dans le chemin des gemmes -

      handsoap-1.1.8/lib/handsoap/http/drivers/net_http_driver.rb

Modifier après ce nouveau client http -

      http_client = Net::HTTP.new(url.host, url.port)

Ajoute ça -

      #Added these new lines below 
      if url.host == "server" #ignore cert check only for this host
      http_client.verify_mode = OpenSSL::SSL::VERIFY_NONE 
      end
0
ajouté
Encore une fois, n'ignorez pas la vérification du certificat. C'est ce qui vous garantit que vous parlez à l'hôte que vous voulez. Vous pourriez parler à un hôte usurpant l'identité autrement.
ajouté l'auteur Bruno, source