2017-05-15 4 views
3

Im Anschluss an die gesamte Dokumentation von Microsoft für ihre neuen Azure MySQL Produkt bietet, halte ich immer den gleichen FehlerSSL-Verbindung zu MySQL Azure Fehler in Node.js Anwendung

Error: 140736265921472:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:../deps/openssl/openssl/ssl/s23_clnt.c:794

ich das auf einem Linux versucht haben, docker container, falls ich ein Problem auf macOS hatte.

Beispiel-Code, habe ich versucht, diese getrennt von meiner app sicher zu sein:

var mysql = require('mysql2'); 

var conn = mysql.createConnection({ 
    host: "mydbname.mysql.database.azure.com", 
    user: "[email protected]", 
    password: 'password', 
    database: 'dbname', 
    port: 3306, 
    ssl: { 
    ca: fs.readFileSync('./BaltimoreCyberTrustRoot.crt'), 
    } 
}); 

Dokumentation Ich folgte:

https://docs.microsoft.com/en-us/azure/mysql/howto-configure-ssl https://docs.microsoft.com/en-us/azure/mysql/howto-connection-string

Ich habe versucht beide mysql und mysql2 Knoten Treiber ohne Erfolg. Hat jemand das gelöst?

+0

Haben Sie mysql2 installiert? npm install --save mysql2 – lloiacono

+1

Ja, ich habe mysql2 installiert. – sjdweb

+0

Ich habe genau das gleiche Problem unter Windows. Node v6.10.3 –

Antwort

4

Vielen Dank für die Meldung des Problems. Der Fehler wurde in unseren internen Tests aufgedeckt und behoben. Wir werden das Update für mehrere Tage bereitstellen, und wir halten Sie auf dem Laufenden. In der Zwischenzeit verwenden Sie bitte Nicht-SSL-Modus, um zu mildern, wenn Sie könnten. Vielen Dank!

----- ----- Bearbeiten

Hallo, hat das Update im Einsatz. Bitte probieren Sie es aus! Vielen Dank.

+0

Aus Neugier, was ist der Fix implementiert? Die Probleme, die auf github für mysql lib diskutiert werden, weisen darauf hin, dass ein Problem mit dem Authentifizierungsschalter besteht (was bedeutet, dass der Knoten keine Verbindung mit oder ohne SSL herstellen kann). Die PR, die den Switch repariert, wird die SSL-Probleme nicht beheben. War dies der Fall, weil das ausgegebene Cert nicht für die MySQL-Datenbankdomäne eingerichtet wurde? Weil ich das auch bemerkt habe. – Dave

+0

Hallo Dave, hier gab es zwei Probleme. Einer war Knoten-Client unterstützt keine Authentifizierung Switch-Protokoll; der andere war unser Dienst hatte eine Regression im Gespräch mit Knoten Client über SSL-Verbindung. Die Rückbildung wurde verursacht, weil das Fähigkeitsflag nicht erkannt wurde. Danke für Ihr Interesse! – TwoCode

+0

Hallo, mit dem gleichen Code bekomme ich jetzt 'Fehler: ich kann kein lokales Ausstellerzertifikat bekommen 'mit den neuesten Treibern' mysql' und 'mysql2'? – sjdweb

Verwandte Themen