2016-12-07 3 views
0

Unser Staging-Server verbindet sich mit unserer Xero Public Application völlig in Ordnung, das ist bis jetzt (7. Dezember 2016). Aus irgendeinem seltsamen Grund kehrt es jetzt die folgende Fehlermeldung:Sudden Certificate Verify bei Xero Public Application fehlgeschlagen

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

Hier ist der Code-Schnipsel, die wir Xero verbinden verwenden.

@xero_client = Xeroizer::PublicApplication.new(APP_KEY, APP_SECRET, :logger => Logger.new('log/xero.log', 'weekly') request_token = @xero_client.request_token(:oauth_callback => "#{APP_DOMAIN}/oauth/callback")

Dann schlägt die App auf dieser Linie und führt den SSLError oben angegeben.

Wer kennt die Ursache dafür?

Details:

  • Wir verwenden Ubuntu 14.04 (Trusty)
  • Wir Ruby on Rails 4.1.7 verwenden, Ruby 2.1.8p440
  • Wir verwenden Xeroizer 2.16.4 gem
  • SSL auf dem Server, wie pro Prüfung mit 3rd-Party-OK scheint Websites, die prüfen, ob SSL auf der Site ordnungsgemäß installiert ist;
  • Ändern der APP_KEY und APP_SECRET zu einer Partneranwendung und Ändern des Konstruktors in Xeroizer::PartnerApplication, und Hinzufügen von zusätzlichen Parametern funktioniert (was bedeutet, Server SSL-Installation ist nicht das Problem).

Antwort

2

Wir sind auch auf dieses Problem gekommen - Aktualisierung auf Version 2.16.5 des Xeroizer Edelstein gelöst das Problem für uns.

+2

Dies ist die richtige Antwort, wie vom Betreuer von Xeroizer am Ende dieser [Github-Ausgabe] erwähnt (https://github.com/waynerobinson/xeroizer/issues/285#issuecomment-265017377) – MJMortimer

0

Stellt sich heraus, müssen wir ca_file als Null festlegen.

@xero_client.client.consumer_options[:ca_file] = nil

Es könnte mit der Tatsache zu tun hat, dass die eingebauten in ca-certificates.crt, der kam mit dem Edelsteine ​​veraltet ist.

In unserem Server ist die Xeroizer CRT-Datei bei /home/deploy/.bundler/mergethat/ruby/2.1.0/gems/xeroizer-2.16.4/lib/xeroizer/ca-certificates.crt gefunden. Es wird einen anderen Pfad haben, abhängig von Ihrem Ruby Gem/Bundler/Rvm Setup.

+0

Wenn dies Ihre Lösung ist, markieren Sie bitte diese Antwort mit dem Häkchen <--- – Sinkingpoint

+0

@Sinkingpoint Ich möchte das tun, aber ich kann meine Lösung morgen nur akzeptieren (brauchen 2 Tage, um das zu tun):) –

Verwandte Themen