Supongo que ya ha creado su instancia de Google Cloud SQL MySQL.
Siguiendo las instrucciones en Conéctese a su instancia de Cloud SQL usando SSL , deberá habilitar el acceso SSL externo y crear un certificado de cliente.
Descargará los tres archivos:server-ca.pem, client-cert.pem, client-key.pem.
Instale el MySqlConnector Paquete NuGet en su aplicación C#.
Cree su cadena de conexión de la siguiente manera:
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();
Tenga en cuenta que para las versiones anteriores de la biblioteca MySqlConnector, deberá combinar el certificado SSL y la clave en un archivo PFX. Siguiendo estas instrucciones , convierta client-cert.pem y client-key.pem en un archivo pfx:
openssl pkcs12 -inkey client-key.pem -in client-cert.pem -export -out client.pfx
Luego elimine el Ssl*
opciones de cadena de conexión y agregue lo siguiente:
CertificateFile = @"C:\Path\To\client.pfx",
CACertificateFile = @"C:\Path\To\server-ca.pem",