Heim > Backend-Entwicklung > Golang > Wie kann ich mithilfe von Go from App Engine eine Verbindung zu Cloud SQL mit SSL herstellen und Zertifikatfehler beheben?

Wie kann ich mithilfe von Go from App Engine eine Verbindung zu Cloud SQL mit SSL herstellen und Zertifikatfehler beheben?

Linda Hamilton
Freigeben: 2024-10-23 17:48:21
Original
418 Leute haben es durchsucht

How to Connect to Cloud SQL with SSL using Go from App Engine and Resolve Certificate Errors?

Herstellen einer Verbindung zu Cloud SQL mit SSL über Go von App Engine

In der Dokumentation von Google wird empfohlen, den folgenden Code zu verwenden, um eine Verbindung zu Cloud SQL über Go und herzustellen der go-sql-driver:

import "database/sql"
import _ "github.com/go-sql-driver/mysql"

db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname")
Nach dem Login kopieren

Dies kann jedoch zu einem x509-Zertifikatfehler führen, der auf ein ungültiges Zertifikat für den angegebenen Projektnamen und Instanznamen hinweist. Dieses Problem tritt bei der Verwendung von SSL-Verbindungen auf. Um das Problem zu beheben, muss bei der Registrierung einer benutzerdefinierten TLSConfig mit dem MySQL-Treiber zusätzlich zur Angabe von project-id:instance-name in sql.Open() die ServerName-Eigenschaft festgelegt werden.

Hier ist ein Beispiel dafür So richten Sie die TLS-Konfiguration ein:

mysql.RegisterTLSConfig("custom", &tls.Config{
    RootCAs:      rootCertPool,
    Certificates: clientCert,
    ServerName:   "projectName:instanceName",
})
Nach dem Login kopieren

Hängen Sie als Nächstes ?tls=nameOfYourCustomTLSConfig an die Verbindungszeichenfolge an:

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

Durch Befolgen dieser Schritte können Sie erfolgreich eine Verbindung zu Cloud SQL herstellen SSL von Google App Engine.

Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe von Go from App Engine eine Verbindung zu Cloud SQL mit SSL herstellen und Zertifikatfehler beheben?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage