Wie behebe ich einen SSL-Verbindungsfehler beim Herstellen einer Verbindung zu Google Cloud SQL mit Go?

DDD
Freigeben: 2024-10-24 03:37:01
Original
726 Leute haben es durchsucht

How to Resolve SSL Connection Error When Connecting to Google Cloud SQL with Go?

Herstellen einer Verbindung zu Google Cloud SQL über SSL mit Go

Frage:

Beim Versuch Wenn Sie über Go und den go-sql-Treiber eine Verbindung zu Google Cloud SQL von Google App Engine herstellen, tritt ein x509-Zertifikatfehler mit der Meldung auf:

"x509: Zertifikat ist gültig für Projektname:Instanzname, nicht Projektname"

Antwort:

Dieser Fehler weist normalerweise darauf hin, dass eine zusätzliche Konfiguration erforderlich ist, wenn SSL für die Verbindung mit Cloud SQL verwendet wird. Während die Projekt-ID:Instanzname in der Verbindungszeichenfolge sql.Open() angegeben werden sollte, ist es auch erforderlich, die ServerName-Eigenschaft festzulegen, wenn eine benutzerdefinierte TLSConfig beim MySQL-Treiber registriert wird.

Um das Problem zu beheben Stellen Sie bei diesem Problem sicher, dass das TLS-Setup einen Servernamen im Aufruf von RegisterTLSConfig enthält:

<code class="go">mysql.RegisterTLSConfig("custom", &tls.Config{
    RootCAs:      rootCertPool,
    Certificates: clientCert,
    ServerName:   "projectName:instanceName",
})</code>
Nach dem Login kopieren

Hängen Sie anschließend ?tls=nameOfYourCustomTLSConfig an die Verbindungszeichenfolge an:

<code class="go">db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname?tls=custom")</code>
Nach dem Login kopieren

Befolgen Sie dazu die folgenden Schritte , können Sie über SSL eine sichere Verbindung zu Google Cloud SQL herstellen.

Das obige ist der detaillierte Inhalt vonWie behebe ich einen SSL-Verbindungsfehler beim Herstellen einer Verbindung zu Google Cloud SQL mit Go?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!