Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So verbinden Sie Google Cloud SQL mit C#

Ich gehe davon aus, dass Sie Ihre Google Cloud SQL MySQL-Instanz bereits erstellt haben.

Befolgen Sie die Anweisungen unter Verbinden Sie sich mit Ihrer Cloud SQL-Instanz mit SSL müssen Sie den externen SSL-Zugriff aktivieren und ein Client-Zertifikat erstellen.

Sie laden die drei Dateien herunter:server-ca.pem, client-cert.pem, client-key.pem.

Installieren Sie den MySqlConnector NuGet-Paket in Ihre C#-Anwendung.

Erstellen Sie Ihre Verbindungszeichenfolge wie folgt:

var csb = new MySqlConnectionStringBuilder
{
    Server = "Google Cloud SQL IP address",
    UserID = "Your UserName",
    Password = "Your Password",
    Database = "Your Database/Schema Name",
    SslCert = @"C:\Path\To\client-cert.pem",
    SslKey = @"C:\Path\To\client-key.pem",
    SslCa = @"C:\Path\To\server-ca.pem",
    SslMode = MySqlSslMode.VerifyCA,
};

using var connection = new MySqlConnection(csb.ConnectionString);
connection.Open();

Beachten Sie, dass Sie für alte Versionen der MySqlConnector-Bibliothek das SSL-Zertifikat und den Schlüssel in einer PFX-Datei kombinieren müssen. Folgen Sie diesen Anweisungen , konvertieren Sie client-cert.pem und client-key.pem in eine PFX-Datei:

openssl pkcs12 -inkey client-key.pem -in client-cert.pem -export -out client.pfx

Entfernen Sie dann den Ssl* Optionen für Verbindungszeichenfolgen und fügen Sie Folgendes hinzu:

    CertificateFile = @"C:\Path\To\client.pfx",
    CACertificateFile = @"C:\Path\To\server-ca.pem",