Spring启动应用程序无法使用SSl连接GCP Mysql实例

时间:2018-02-28 09:37:17

标签: spring-boot

我正在尝试在Spring启动应用程序和GCP MySQL实例之间建立SSL连接。 为此已经生成并下载了客户端-cece.pem' client-key.pem'和  ' server-ca .pem'来自GCP。 遵循以下步骤:

第1步:生成' my-cert.p12'文件

openssl pkcs12 -export -in client-cert.pem -inkey client-key.pem -out my-cert.p12 

第2步:导入' my-cert.p12'文件

keytool -importkeystore  -srckeystore D:\my-cert.p12 -destkeystore ./cacerts -srcstoretype PKCS12 -deststorepass changeit

setp 3 :已转换' server-ca.pem'到' server-ca.der'

openssl x509 -in server-ca.pem -inform pem -out server-ca.der -outform der

第4步:导入' server-ca.der' keytool -importcert -alias gcp-mysql-ca -keystore ./cacerts -storepass changeit -file D:\ server-ca.der

步骤5:配置spring boot application.properties文件:

spring.datasource.url= jdbc:mysql://xxx.xxx.xxx.xxx:3306/xxx?useUnicode=true&characterEncoding=utf8&useSSL=true&requireSSL=true

当我运行spring boot应用程序时,获得以下异常:

  

引起:java.sql.SQLException:拒绝用户访问   '根' @' XXX.XXX.XXX.XX' (使用密码:是)

有人建议安装GCP MySQL SSL证书并在Spring Boot应用程序中配置它的好方法吗?

1 个答案:

答案 0 :(得分:0)

您是否考虑过使用Spring Cloud GCP SQL集成? 您可以使用Google OAuth2凭据,Spring Cloud GCP将负责其余工作。

https://github.com/spring-cloud/spring-cloud-gcp

https://docs.spring.io/spring-cloud-gcp/docs/1.0.0.M2/reference/htmlsingle/#_spring_jdbc