我有一个包含以下组件的 Karaf 程序:
我刚刚设置了一个新的开发环境,我使用的是 Mysql 8.0.11(最近才发布)。我已经在本地将 Mysql 连接器升级到 5.1.46,因此它与 Mysql 8 兼容,并且大部分情况下都可以使用。但是,我在 Karaf 控制台中收到了一些关于 SSL 的警告:
Wed Apr 25 09:28:29 CEST 2018 警告:不建议在没有服务器身份验证的情况下建立 SSL 连接。根据 MySQL 5.5.45+、5.6.26+ 和 5.7.6+ 要求,如果未设置显式选项,则必须默认建立 SSL 连接。为了符合不使用 SSL 的现有应用程序,verifyServerCertificate 属性设置为“false”。您需要通过设置 useSSL=false 来显式禁用 SSL,或者设置 useSSL=true 并为服务器证书验证提供信任库。
我想在本地禁用 SSL,但建议的添加&useSSL=false
到连接字符串末尾的建议不起作用。这是我的连接字符串:
hibernate.connection.url=jdbc:mysql://localhost:3306/dbname?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&requireSSL=false
我究竟做错了什么?
在遇到MySql & Hibernate SSL Connection 之后,我发现在这种情况下 useSSL 和 requireSSL 属性不应该像使用 Tomcat webapp.xml 文件那样添加到 jdbc url(因为我最初认为它会起作用),而是作为单独的hibernate.connection.useSSL
和hibernate.connection.requireSSL
属性添加。
用法:
hibernate.connection.useSSL=false
hibernate.connection.requireSSL=false
将这两行添加到我在 karaf 中的 hibernate.properties 文件中删除了警告。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句