Mysql 8.0.11 с Hibernate и C3P0: как отключить подключение через SSL? - PullRequest
0 голосов
/ 25 апреля 2018

У меня есть программа Karaf со следующими компонентами:

  1. Karaf 4.0.7;
  2. Hibernate 4.3.7;
  3. Mysql JDBC Connector 5.1.27;
  4. C3P0 0.9.5.

Я только что создал новую среду разработки, в которой я использую Mysql 8.0.11 (выпущен только недавно).Я уже локально обновил мой Mysql Connector до 5.1.46, чтобы он был совместим с Mysql 8, и он в основном работает.Однако в консоли Karaf я получаю некоторые предупреждения о SSL:

Ср 25 апреля 09:28:29 CEST 2018 ПРЕДУПРЕЖДЕНИЕ. Установление SSL-соединения без проверки подлинности сервера не рекомендуется.В соответствии с требованиями MySQL 5.5.45+, 5.6.26+ и 5.7.6+ SSL-соединение должно быть установлено по умолчанию, если явная опция не установлена.Для соответствия существующим приложениям, не использующим SSL, свойство verifyServerCertificate установлено в значение «false».Вам нужно либо явно отключить SSL, установив useSSL = false, либо установить useSSL = true и предоставить хранилище доверенных сертификатов для проверки сертификата сервера.

Я бы хотел отключить SSL локально, но рекомендуется добавить&useSSL=false до конца строки подключения не работает.Это моя строка подключения:

hibernate.connection.url=jdbc:mysql://localhost:3306/dbname?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&requireSSL=false

Что я делаю не так?

1 Ответ

0 голосов
/ 25 апреля 2018

После обнаружения MySql & Hibernate SSL Connection я выяснил, что свойства useSSL и requireSSL в этом случае не следует добавлять в URL-адрес jdbc, как это было бы при использовании Tomcat webapp.xmlфайл (как я изначально думал, что это будет работать), но скорее добавлены как отдельные свойства hibernate.connection.useSSL и hibernate.connection.requireSSL.

использование:

hibernate.connection.useSSL=false
hibernate.connection.requireSSL=false

Добавление этих 2 строк в мой спящий режим.Файл свойств в karaf убрал предупреждения.

...