Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Membetulkan \"x509: sijil sah untuk ...\" Ralat Menyambung ke Cloud SQL dengan SSL dan Golang?

Bagaimana untuk Membetulkan \"x509: sijil sah untuk ...\" Ralat Menyambung ke Cloud SQL dengan SSL dan Golang?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-23 19:47:02818semak imbas

How to Fix

Menyambung ke Google Cloud SQL dengan SSL dan Golang daripada Google App Engine

Menyambung ke Google Cloud SQL menggunakan Golang dan go-sql- pemandu boleh menghadapi ralat semasa menggunakan SSL. Satu ralat khusus yang mungkin timbul ialah:

x509: certificate is valid for projectName:instanceName, not projectName

Untuk menyelesaikan isu ini, adalah penting untuk menetapkan sifat ServerName apabila mendaftar TLSConfig tersuai dengan pemacu MySQL, selain daripada menentukan project-id:instance -name within sql.Open().

Berikut ialah contoh yang menunjukkan pembetulan ini:

<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>

Dengan menambahkan ?tls=nameOfYourCustomTLSConfig pada rentetan sambungan, anda boleh menentukan konfigurasi TLS tersuai untuk digunakan. Ini memastikan bahawa sambungan diwujudkan dengan betul dengan SSL.

Atas ialah kandungan terperinci Bagaimana untuk Membetulkan \"x509: sijil sah untuk ...\" Ralat Menyambung ke Cloud SQL dengan SSL dan Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn