spring - name - Configure el muelle para conectarse a mysql sobre ssl
conectar spring con mysql (1)
El valor de jdbc.url
en jdbc.properties tiene que ser
jdbc: mysql: //127.0.0.1: 3306 / MySampleDb? verifyServerCertificate = true & useSSL = true & requireSSL = true
Esos parámetros se deben agregar directamente a la URL para MySQL. Los parámetros para keyStore
y trustStore
deben pasar a la JVM al inicio de la siguiente manera:
-Djavax.net.ssl.keyStore=path_to_keystore_file
-Djavax.net.ssl.keyStorePassword=password
-Djavax.net.ssl.trustStore=path_to_truststore_file
-Djavax.net.ssl.trustStorePassword=password
Puede usar Spring para establecer las propiedades del sistema, pero nunca lo usaría, es demasiado engorroso.
Me estoy conectando a MySQL sobre SSL desde mi aplicación Java. He configurado MYSQL para admitir SSL y certificados de clientes generados. He importado el certificado CA del servidor y el certificado del cliente en el almacén de claves. Así es como mi código se ve actualmente
String url = "jdbc:mysql://127.0.0.1:3306/MySampleDb? verifyServerCertificate =true&useSSL=true&requireSSL=true"
System.setProperty("javax.net.ssl.keyStore","/home/cert/keystore");
System.setProperty("javax.net.ssl.keyStorePassword","password");
System.setProperty("javax.net.ssl.trustStore","/home/cert/truststore");
System.setProperty("javax.net.ssl.trustStorePassword","password");
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection(url, user, password);
Quiero usar Spring con C3p0 para conectarme a MYSQL sobre SSL. Este es mi archivo de configuración de primavera que lee los parámetros de jdbc.properties.
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="${jdbc.driver}"/>
<property name="jdbcUrl" value="${jdbc.url}"/>
<property name="user" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
........
</bean>
¿Cómo puedo configurar el resorte para establecer las propiedades verifyServerCertificate = true
useSSL = true
requireSSL = true "
También es posible establecer los valores de keyStore y trustStore en el archivo de configuración de primavera.