使用tls / ssl通过hibernate连接到postgres

时间:2017-12-13 12:40:15

标签: hibernate ssl tls1.2 postgresql-9.2

我尝试在app server和postgres数据库之间启用TLS / SSL连接。我已经按照postgres的指示进行了操作,除了安全,我已经禁用了所有连接。根据文档,我已经测试了与psql命令的连接,我可以安全地连接。我的环境包含数据源,JDBC驱动程序和hibernate。我已经能够安全地连接数据源和JDBC驱动程序,但是hibernate没有运气。下面是使用datasource / JDBC驱动程序的字符串。

String url = "jdbc:postgresql://%s:%d/postgres?user=%s&password=%s&ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory"

对于休眠(不工作):

<property name="hibernate.connection.url" value="jdbc:postgresql://127.0.0.1:5432/DB?ssl=true&amp;sslfactory=org.postgresql.ssl.NonValidatingFactory"/>
<property name="hibernate.connection.url" value="jdbc:postgresql://127.0.0.1:5432/DB?ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory"/>
<property name="hibernate.connection.url" value="jdbc:postgresql://127.0.0.1:5432/DB?ssl=true"/>

如果重要的话,我正在使用Hibernate org.hibernate.c3p0.internal.C3P0ConnectionProvider。

有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:-1)

<property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/database?ssl=true&amp;sslfactory=org.postgresql.ssl.NonValidatingFactory</property>

&amp;代替&