Podpora pro certifikáty s vlastním podpisem byla nedávno přidána do ovladače MariaDB JDBC (který funguje také pro připojení k MySQL). Nejnovější verze (1.1.3 v době psaní tohoto článku) také umožňuje přímo zadat certifikát serveru za běhu, takže nemusíte předem konfigurovat úložiště klíčů nebo importovat certifikáty.
Dvě vlastnosti, které je třeba nastavit, jsou useSSL
a serverSslCert
. Tou druhou může být buď samotný certifikát (hodnota řetězce) nebo cesta k souboru, který certifikát obsahuje (buď úplná cesta, nebo relativní cesta ke třídě):
String url = "jdbc:mysql://" + host + ":" + port + "/" + database;
Properties info = new Properties();
info.setProperty("user", username);
info.setProperty("password", password);
info.setProperty("useSSL", "true");
info.setProperty("serverSslCert", "classpath:server.crt");
Connection conn = DriverManager.getConnection(url, info);
Úplný funkční příklad, jak se připojit, naleznete zde:https://github.com/properssl /java-jdbc-mariadb