Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг
ПРИХОДИТЕ УЧИТЬСЯ НОВОЙ ПРОФЕССИИ ЛЕТОМ СО СКИДКОЙ ДО 70% Забронировать скидку
10 Июл 2023
2 мин
325

Решение проблемы предупреждения о SSL-соединении при подключении к базе данных MySQL

Существует распространенная проблема, с которой могут столкнуться разработчики при подключении к базе данных MySQL с использованием Java. При попытке

Существует распространенная проблема, с которой могут столкнуться разработчики при подключении к базе данных MySQL с использованием Java. При попытке подключения они могут столкнуться с предупреждением следующего рода:

WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.

Это предупреждение означает, что устанавливается SSL-соединение без проверки идентификации сервера, что не рекомендуется. Согласно требованиям MySQL, SSL-соединение должно устанавливаться по умолчанию, если явная опция не установлена. Для совместимости с существующими приложениями, не использующими SSL, свойство verifyServerCertificate установлено в ‘false’. Необходимо явно отключить SSL, установив useSSL=false, или установить useSSL=true и предоставить хранилище доверия для проверки сертификата сервера.

Решить данную проблему можно двумя способами:

  1. Явно отключить SSL, добавив useSSL=false к строке подключения.
String connectionURL = "jdbc:mysql://localhost:3306/Peoples?useSSL=false";
  1. Включить SSL, установив useSSL=true, и предоставить хранилище доверия для проверки сертификата сервера.
String connectionURL = "jdbc:mysql://localhost:3306/Peoples?useSSL=true";

В этом случае потребуется настроить хранилище доверия и убедиться, что сертификат сервера имеется в хранилище доверия.

Таким образом, данный вопрос можно решить, явно указав параметр useSSL в строке подключения к базе данных MySQL.

Добавить комментарий

Подарок
Забрать подарок