Maison  >  Article  >  développement back-end  >  Comment résoudre les problèmes de connexion SSL pour Google Cloud SQL avec Golang ?

Comment résoudre les problèmes de connexion SSL pour Google Cloud SQL avec Golang ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-24 05:37:30820parcourir

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

Dépannage des connexions SSL à Google Cloud SQL avec Golang à partir de Google App Engine

Lors de la tentative d'établissement d'une connexion à Google Cloud SQL à partir de Google App Moteur utilisant le pilote go-sql-driver et SSL, les développeurs rencontrent souvent une erreur « le certificat est valide pour le nom du projet : nom de l'instance, pas pour le nom du projet ». Ce problème survient lorsque la propriété ServerName n'est pas explicitement définie lors de l'enregistrement d'un TLSConfig personnalisé avec le pilote MySQL.

Pour résoudre ce problème, assurez-vous d'inclure les étapes suivantes dans votre code :

  1. Enregistrez un TLSConfig avec le certificat et les clés souhaités, en définissant le ServerName sur le nom de votre projet et de votre instance :
<code class="go">mysql.RegisterTLSConfig("custom", &tls.Config{
    RootCAs:      rootCertPool,
    Certificates: clientCert,
    ServerName:   "projectName:instanceName", // <-- Added ServerName property
})</code>
  1. Ajoutez "?tls=nameOfYourCustomTLSConfig" à la chaîne de connexion à votre base de données :
<code class="go">db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname?tls=custom")</code>

En mettant en œuvre ces ajustements, vous réussirez à établir une connexion SSL à votre instance Cloud SQL à partir de Google App Engine à l'aide de Golang.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn