Ik neem aan dat u uw Google Cloud SQL MySQL-instantie al heeft gemaakt.
Volg de instructies op Maak verbinding met uw Cloud SQL-instantie met SSL , moet u externe SSL-toegang inschakelen en een clientcertificaat maken.
U downloadt de drie bestanden:server-ca.pem, client-cert.pem, client-key.pem.
Installeer de MySqlConnector NuGet-pakket in uw C#-toepassing.
Maak uw verbindingsreeks als volgt aan:
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();
Houd er rekening mee dat u voor oude versies van de MySqlConnector-bibliotheek het SSL-certificaat en de sleutel in één PFX-bestand moet combineren. Volg deze instructies , converteer client-cert.pem en client-key.pem naar een pfx-bestand:
openssl pkcs12 -inkey client-key.pem -in client-cert.pem -export -out client.pfx
Verwijder vervolgens de Ssl*
verbindingsreeksopties en voeg het volgende toe:
CertificateFile = @"C:\Path\To\client.pfx",
CACertificateFile = @"C:\Path\To\server-ca.pem",