通过SSL连接Informix JDBC

时间:2017-03-22 14:51:35

标签: spring ssl informix spring-jdbc

我想用Spring连接Spring JDBC应用程序。 DBMS是Informix IBM。

我使用spring-config.xml文件来声明数据源bean:

dim shSrc as worksheet
dim shTarget as worksheet
set shSrc =Workbooks("EIL Depannage Register.xlsm").Sheets("Raising Depannage")
set shTarget =Workbooks("EIL Depannage Register.xlsm").Sheets("Raising Depannage")
shSrc.unprotect
shTarget.unprotect
shSrc.Range("A1:K2").Copy
shTarget. Range("A1").Paste   
shSrc.protect
shTarget.protect
set shsrc=nothing
set shtarget=nothing`

非常感谢。

的Mac

1 个答案:

答案 0 :(得分:3)

您是否有与Informix服务器建立的基本SSL连接,例如使用dbaccess工具?如果没有,您可能需要参考这篇关于配置步骤的developerWorks文章:

https://www.ibm.com/developerworks/data/library/techarticle/dm-0912securesockets1/dm-0912securesockets1-pdf.pdf

本文使用的是Informix 11.50,而我使用的是12.10,后者使用更高版本的IBM GSKit,因此我在文章使用gsk7capicmd的地方替换了gsk8capicmd_64命令。

我不了解Spring JDBC,因此我使用基本的JDBC演示程序来测试SSL连接。该程序基于Informix JDBC驱动程序指南中列出的“用于SSL连接的JDBC示例”程序:

https://www.ibm.com/support/knowledgecenter/en/SSGU8G_12.1.0/com.ibm.jdbc_pg.doc/ids_jdbc_490.htm

以下是代码中的一些相关摘录:

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();

您可能还需要配置Java Cryptography Extension-complian加密服务提供程序,如Informix JDBC驱动程序指南的“加密选项”部分所述:

https://www.ibm.com/support/knowledgecenter/en/SSGU8G_12.1.0/com.ibm.jdbc_pg.doc/ids_jdbc_059.htm