App Engine에서 Go를 사용하여 SSL로 Cloud SQL에 연결
Google 문서에서는 Go를 사용하여 Cloud SQL에 연결하고 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")
그러나 이로 인해 지정된 프로젝트 이름과 인스턴스 이름에 대한 인증서가 유효하지 않음을 나타내는 x509 인증서 오류가 발생할 수 있습니다. 이 문제는 SSL 연결을 사용할 때 발생합니다. 이 문제를 해결하려면 sql.Open()에서 project-id:instance-name을 지정하는 것 외에도 mysql 드라이버로 사용자 지정 TLSConfig를 등록할 때 ServerName 속성을 설정해야 합니다.
다음은 방법에 대한 예입니다. TLS 구성을 설정하려면:
mysql.RegisterTLSConfig("custom", &tls.Config{ RootCAs: rootCertPool, Certificates: clientCert, ServerName: "projectName:instanceName", })
다음으로 연결 문자열에 ?tls=nameOfYourCustomTLSConfig를 추가하세요.
db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname?tls=custom")
다음 단계를 따르면 다음을 사용하여 Cloud SQL에 성공적으로 연결할 수 있습니다. Google App Engine의 SSL.
위 내용은 App Engine에서 Go를 사용하여 SSL로 Cloud SQL에 연결하고 인증서 오류를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!