当前位置: 首页 > 面试题库 >

如何配置Hibernate以使用SSL与数据库服务器通信?

寇升
2023-03-14
问题内容

我有一个使用Hibernate的持久性的现有Java Web应用程序。有人告诉我,我必须与加密的DB进行对话-
所以我的第一个想法是将其设置为通过SSL进行通信-并研究了如何设置Oracle以通过SSL侦听JDBC-

http://www.oracle.com/technology/tech/java/sqlj_jdbc/pdf/wp-oracle- jdbc_thin_ssl_2007.pdf

并编写了一个快速测试类来验证它是否已设置并且可以正常工作(通过标准JDBC连接)。这给我带来了配置Hibernate的问题-
不幸的是,我看不到hibernate如何支持它?


问题答案:

Hibernate使用标准的JDBC数据源,因此不需要特定于Hibernate的配置。

这是一个在使用Spring配置Hibernate时应该起作用的简单示例:

<bean id="dataSource" class="oracle.jdbc.pool.OracleDataSource">
    <property name="URL"><value><!-- JDBC URL that specifies SSL connection --></value></property>
    <!-- other relevant properties, like user and password -->
    <property name="connectionProperties>
        <value>
            oracle.net.ssl_cipher_suites: (ssl_rsa_export_with_rc4_40_md5, ssl_rsa_export_with_des40_cbc_sha)
            oracle.net.ssl_client_authentication: false
            oracle.net.ssl_version: 3.0
            oracle.net.encryption_client: REJECTED 
            oracle.net.crypto_checksum_client: REJECTED
        </value>
    </property>
</bean>

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />
    <!-- classes etc -->
</bean>


 类似资料:
  • 问题内容: 我正在尝试通过SSL连接使用socket.io设置服务器到服务器的链接。这是我的例子: 在没有SSL的情况下运行时,代码工作正常。我怀疑这可能是我的自签名证书未被接受,但是我不知道如何使客户接受它。 请告诉我如何:1.接受自签名SSL证书。或2.以其他方式帮助我完成这项工作。 提前致谢。 问题答案: 经过更多搜索后,将其添加到客户端中使其可以工作: require(’https’)。g

  • 问题内容: 我想要我的Web应用程序的安全连接。因此,我想为我的wildfly 8.2.0服务器配置ssl。我已经在独立/配置文件夹中创建并存储了.keystore文件。 必须添加: 在standalone.xml文件中,但是有tag: 当我用上面指定的标签替换它时出现错误: 问题答案: 我已经为Wildfly 8.2.0配置了ssl。 步骤1:创建密钥库 步骤2:编辑configuration

  • 我们正在使用cloudfront为具有自定义域的图像提供服务。 我们希望能够使用SSL访问它们,例如

  • 我有一个关于SSLConnection的问题,在java中,我为客户端编写了下面的代码(这个应用程序必须连接到服务器,我有支持ssl的服务器),但我得到了这样的错误“javax.net.ssl.sslException:Connection Hays Shutdown:javax.net.ssl.sslhandShakeException:sun.security.validator.valida

  • 问题内容: 我正在尝试使用axios向api端点发出请求,但出现以下错误: 似乎axios使用的https模块无法验证服务器上使用的SSL证书。 使用浏览器访问服务器时,证书有效,我可以查看/下载该证书。我还可以通过https向浏览器上的api请求。 我可以通过关闭验证来解决此问题。此代码有效。 问题是,这不验证SSL证书,因此打开了安全漏洞。 如何配置axios以信任证书并正确验证它? 问题答案

  • 因为我有一个长期运行的任务要在我的应用程序的后台执行,所以我正在尝试实现一个服务来完成一项工作。 此服务使用LocationClient实例中的位置数据,每个请求都会触发一个PendingEvent。最低目标版本阻止我使用新的LocationServices,Android文档建议我使用LocationClient的PendingEvent版本。requestLocationUpdates(…)方