在Hibernate中使用MySQL RDS启用SSL

时间:2012-03-15 23:28:37

标签: java mysql amazon-web-services amazon-rds

我正在尝试从Hibernate安全地连接到RDS实例。我的hibernate.cfg文件中的相关属性如下所示。

<property name="connection.url">
            jdbc:mysql://<endpoint>/<db>?autoReconnect=true&amp;useUniCode=true&amp;characterEncoding=UTF-8&amp;useSSL=true     
</property>
<property name="dialect"> org.hibernate.dialect.MySQLDialect </property>    
<property name="connection.verifyServerCertificate">false</property>
<property name="connection.requireSSL">true</property>

但是我得到了例外。

Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

我是否还需要在我的RDS实例上配置某些内容?

谢谢,

1 个答案:

答案 0 :(得分:0)

我能解决这个问题,但还不知道根本原因。

以某种方式单独添加这些连接属性不起作用,但当我在连接URL中添加它们作为参数时,它可以工作。

 jdbc:mysql://<endpoint>/<db>?autoReconnect=true&useUniCode=true&characterEncoding=UTF-8&useSSL=true&verifyServerCertificate=false&requireSSL=true