Google CloudSQLMySQLインスタンスはすでに作成されていると思います。
を使用して、CloudSQLインスタンスに接続します。 SSL 、外部SSLアクセスを有効にして、クライアント証明書を作成する必要があります。
server-ca.pem、client-cert.pem、client-key.pemの3つのファイルをダウンロードします。
MySqlConnector をインストールします NuGetパッケージをC#アプリケーションに組み込みます。
次のように接続文字列を作成します。
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();
古いバージョンのMySqlConnectorライブラリの場合、SSL証明書とキーを1つのPFXファイルに結合する必要があることに注意してください。 これらの手順 に従う 、client-cert.pemとclient-key.pemをpfxファイルに変換します:
openssl pkcs12 -inkey client-key.pem -in client-cert.pem -export -out client.pfx
次に、Ssl*
を削除します 接続文字列オプションを追加し、以下を追加します:
CertificateFile = @"C:\Path\To\client.pfx",
CACertificateFile = @"C:\Path\To\server-ca.pem",