Wie behebt man den Fehler „x509: Zertifikat ist gültig für ...' beim Herstellen einer Verbindung zu Cloud SQL mit SSL und Golang?

Mary-Kate Olsen
Freigeben: 2024-10-23 19:47:02
Original
817 Leute haben es durchsucht

How to Fix

Herstellen einer Verbindung zu Google Cloud SQL mit SSL und Golang von Google App Engine

Herstellen einer Verbindung zu Google Cloud SQL über Golang und go-sql- Bei der Verwendung von SSL kann es beim Treiber zu Fehlern kommen. Ein spezifischer Fehler, der auftreten kann, ist:

x509: certificate is valid for projectName:instanceName, not projectName
Nach dem Login kopieren

Um dieses Problem zu beheben, ist es wichtig, zusätzlich zur Angabe der Projekt-ID:Instanz die ServerName-Eigenschaft festzulegen, wenn Sie eine benutzerdefinierte TLSConfig beim MySQL-Treiber registrieren -name innerhalb von sql.Open().

Hier ist ein Beispiel, das diesen Fix demonstriert:

<code class="go">import "database/sql"
import _ "github.com/go-sql-driver/mysql"

// Create a custom TLS configuration.
tlsConfig := &tls.Config{
    RootCAs:      rootCertPool,
    Certificates: clientCert,
    ServerName:   "projectName:instanceName",
}

// Register the TLS configuration with the MySQL driver.
mysql.RegisterTLSConfig("custom", tlsConfig)

// Establish the database connection with SSL enabled.
db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname?tls=custom")</code>
Nach dem Login kopieren

Durch Anhängen von ?tls=nameOfYourCustomTLSConfig an die Verbindungszeichenfolge können Sie die benutzerdefinierte TLS-Konfiguration angeben verwendet werden. Dadurch wird sichergestellt, dass die Verbindung mit SSL korrekt aufgebaut wird.

Das obige ist der detaillierte Inhalt vonWie behebt man den Fehler „x509: Zertifikat ist gültig für ...' beim Herstellen einer Verbindung zu Cloud SQL mit SSL und Golang?. 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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!