मुझे लगता है कि आपने अपना Google क्लाउड SQL MySQL इंस्टेंस पहले ही बना लिया है।
के निर्देशों का पालन करते हुए अपने Cloud SQL इंस्टेंस का उपयोग करके कनेक्ट करें एसएसएल , आपको बाहरी एसएसएल पहुंच को सक्षम करने और क्लाइंट प्रमाणपत्र बनाने की आवश्यकता होगी।
आप तीन फ़ाइलें डाउनलोड करेंगे:server-ca.pem, client-cert.pem, client-key.pem।
MySqlConnector इंस्टॉल करें आपके C# एप्लिकेशन में NuGet पैकेज।
अपनी कनेक्शन स्ट्रिंग इस प्रकार बनाएं:
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 प्रमाणपत्र और कुंजी को एक 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",