ホームページ  >  記事  >  バックエンド開発  >  Golang を使用して Google Cloud SQL の SSL 接続の問題を解決する方法

Golang を使用して Google Cloud SQL の SSL 接続の問題を解決する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-24 05:37:30820ブラウズ

How to Resolve SSL Connection Issues for Google Cloud SQL with Golang?

Google App Engine から Golang を使用した Google Cloud SQL への SSL 接続のトラブルシューティング

Google App から Google Cloud SQL への接続を確立しようとする場合go-sql-driver と SSL を使用するエンジンでは、開発者は「証明書は projectName:instanceName に対して有効です。projectName ではありません」というエラーが頻繁に発生します。この問題は、カスタム TLSConfig を mysql ドライバーに登録するときに ServerName プロパティが明示的に設定されていない場合に発生します。

この問題に対処するには、コードに次の手順を必ず含めてください:

  1. 目的の証明書とキーを使用して TLSConfig を登録し、ServerName をプロジェクト名とインスタンス名に設定します:
<code class="go">mysql.RegisterTLSConfig("custom", &tls.Config{
    RootCAs:      rootCertPool,
    Certificates: clientCert,
    ServerName:   "projectName:instanceName", // <-- Added ServerName property
})</code>
  1. データベース接続文字列に「?tls=nameOfYourCustomTLSConfig」を追加します:
<code class="go">db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname?tls=custom")</code>

これらの調整を実装すると、Golang を使用して Google App Engine から Cloud SQL インスタンスへの SSL 接続を正常に確立できます。

以上がGolang を使用して Google Cloud SQL の SSL 接続の問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。