Quiero conectar mi aplicación Spring JDBC con SSL. El SGBD es Informix IBM.
Estoy usando un archivo spring-config.xml en el que declaro el bean de fuente de datos:
<bean id="dataSource" class="com.sopra.datasource.CDataSource" init-method="init" destroy-method="close"> <property name="url" value="${jdbc.url}" /> <property name="driverClassName" value="${jdbc.driverClassName}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> <property name="removeAbandoned" value="true" /> <property name="initialSize" value="20" /> <property name="maxActive" value="30" /> </bean>Muchas gracias.
Mac
¿Tiene una conexión SSL básica con el servidor Informix funcionando, por ejemplo, utilizando la herramienta dbaccess? De lo contrario, puede consultar este artículo de developerWorks para conocer los pasos de configuración:
Este artículo usa Informix 11.50 mientras que yo estaba usando 12.10 que usa una versión posterior de IBM GSKit, así que sustituí el comando gsk8capicmd_64 en todas partes donde el artículo usa gsk7capicmd.
No tengo conocimiento de Spring JDBC, así que luego usé un programa de demostración básico de JDBC para probar la conexión SSL. Este programa se basó en el programa "Ejemplo de JDBC para conexión SSL" que se incluye en la Guía del controlador JDBC de Informix:
https://www.ibm.com/support/knowledgecenter/en/SSGU8G_12.1.0/com.ibm.jdbc_pg.doc/ids_jdbc_490.htm
Aquí hay algunos extractos relevantes del código:
System.setProperty("javax.net.ssl.trustStore", "/home/keystore/keystore"); System.setProperty("javax.net.ssl.trustStorePassword", "password"); IfxConnectionPoolDataSource cds = new IfxConnectionPoolDataSource(); cds.setIfxIFXHOST("informix_hostname""); cds.setServerName("informix_server"); cds.setPortNumber(port_number); cds.setIfxSSLCONNECTION("true"); cds.setUser("informix"); cds.setPassword("password"); cds.setDatabaseName("stores_demo"); conn = cds.getPooledConnection().getConnection();Es posible que también deba configurar un proveedor de servicios de cifrado compatible con Java Cryptography Extension como se describe en la sección Opciones de cifrado de la Guía del controlador JDBC de Informix:
https://www.ibm.com/support/knowledgecenter/en/SSGU8G_12.1.0/com.ibm.jdbc_pg.doc/ids_jdbc_059.htm