mba12 Ich hatte das gleiche Problem, danke für die Antwort!
Die Lösung ist also hier (wie Sie darauf hingewiesen haben):Wie stellt man eine Verbindung zu MySQL mit X509 über JDBC her?
Ich habe auch dieses gefunden:Importieren eines vorhandenen x509-Zertifikats und eines privaten Schlüssels in den Java-Schlüsselspeicher zur Verwendung in SSL
Nur zur Klarstellung
javax.net.ssl.keyStore
muss Client-Zertifikat + Schlüssel kombiniert sein, nicht nur Client-Zertifikat, wie im MySQL-Handbuch beschrieben.
Zusammenfassend
- Wir haben:
server-ca.pem
- MySQL-CA-Zertifikat, kann unter "SSL-Konfiguration -> Server-CA-Zertifikat anzeigen"
client-cert.pem
- Öffentlicher Schlüssel des Clients, kann unter "Client-Zertifikate -> neu erstelltes Zertifikat" heruntergeladen werden
client-key.pem
- Privater Schlüssel des Clients, kann nur über das Dialogfeld "Neues SSL-Zertifikat erstellt" heruntergeladen werden
Hier beschrieben:https://cloud.google.com/sql/docs/ configure-ssl-instance
Speichern wir sie in server-instance/ Ordner und erstellen Sie jks/ Ordner für generierte Dateien in Schritt 2.
-
truststore
erstellen Datei2.1. Kopieren Sie die
cacerts
des ursprünglichen JAVA zujks/truststore.jks
:cp $JAVA_HOME/jre/lib/security/cacerts jks/truststore.jks
2.2. Fügen Sie MySQL Server CA Certificate / Google Cloud SQL Server CA
server-ca.pem
hinzu zu JAVAs Standard-Truststorecacerts
die wir in Schritt 2.1. kopiert haben:keytool -importcert -noprompt -trustcacerts -keystore jks/truststore.jks -storepass changeit -alias googlecloudsqlservercacert -file server-instance/server-ca.pem
-
keystore
erstellen Datei3.1. x509-Zertifikat und privaten Schlüssel in eine pkcs12-Datei konvertieren:
openssl pkcs12 -export -in server-instance/client-cert.pem -inkey server-instance/client-key.pem -out jks/client.p12
(Pflichtpasswort eingeben), zum Beispiel:
p4ssw0rd
3.2. Konvertieren Sie die pkcs12-Datei in einen Java-Keystore:
keytool -importkeystore -srckeystore jks/client.p12 -srcstoretype PKCS12 -destkeystore jks/keystore.jks -deststoretype JKS
(gleiche Passwörter eingeben), zum Beispiel:
p4ssw0rd
Informationen zur Konvertierung:http://blog.ejbca. org/2008/02/converting-keystores-between-jks-and.html