Spec-Zone.ru › MySQL Shell 8.4

4.3.4 Использование зашифрованных соединений

Использование зашифрованных соединений возможно при подключении к серверу MySQL, поддерживающему TLS (иногда называемому SSL). Большая часть конфигурации MySQL Shell основана на параметрах, используемых сервером MySQL, см. для получения дополнительной информации.

Для настройки зашифрованного соединения при запуске MySQL Shell используйте следующие параметры командной строки:

  • : Этот параметр задаёт желаемое состояние безопасности соединения с сервером.

  • : Путь к файлу в формате PEM, содержащему список доверенных центров сертификации SSL.

  • : Путь к каталогу, содержащему сертификаты доверенных центров сертификации SSL в формате PEM.

  • : Имя файла сертификата SSL в формате PEM, используемого для установления зашифрованного соединения.

  • : Имя шифра SSL, используемого для установления зашифрованного соединения.

  • : Имя файла ключа SSL в формате PEM, используемого для установления зашифрованного соединения.

  • : Путь к файлу, содержащему списки отзыва сертификатов в формате PEM.

  • : Путь к каталогу, содержащему файлы со списками отзыва сертификатов в формате PEM.

  • : Набор TLS-шифров, разрешённых для зашифрованных соединений, указанных как список имён TLS-шифров, разделённых двоеточием. Например, .

  • : TLS-протоколы, разрешённые для зашифрованных соединений, указанные как список, разделённый запятыми. Например, .

    Начиная с MySQL 8.0.28, протоколы TLSv1 и TLSv1.1 не поддерживаются сервером MySQL, и MySQL Shell не может установить TLS/SSL-соединение с протоколом, установленным на TLSv1 или TLSv1.1. Если вы попытаетесь установить соединение с помощью TLS/SSL из любой версии MySQL Shell на сервере MySQL версии 8.0.28 или выше, и укажете протокол TLSv1 или TLSv1.1 с помощью параметра, вы увидите следующие результаты:

    • Для TCP-соединений соединение прерывается, и ошибка возвращается в MySQL Shell.

    • Для сокетных соединений, если установлено на REQUIRED, соединение прерывается. Если не установлено на REQUIRED, соединение устанавливается, но с отключённым TLS/SSL.

    Протоколы TLSv1 и TLSv1.1 были устаревшими с MySQL 8.0.26. Для справки обратитесь к IETF-меморандуму Deprecating TLSv1.0 and TLSv1.1. Устанавливайте соединения между MySQL Shell и сервером MySQL с использованием более безопасных протоколов TLSv1.2 и TLSv1.3. TLSv1.3 требует, чтобы как сервер MySQL, так и клиентское приложение были скомпилированы с OpenSSL 1.1.1 или выше. Для получения дополнительной информации о поддержке версий TLS-протоколов в выпусках сервера MySQL, см. .

В качестве альтернативы, параметры SSL могут быть закодированы как часть строки подключения в стиле URI в качестве части элемента запроса. Доступные параметры SSL такие же, как перечисленные выше, но написанные без предшествующих дефисов. Например, ssl-ca эквивалентно .

Пути, указанные в строке в стиле URI, должны быть закодированы по процентам, например:

ssluser@127.0.0.1?ssl-ca%3D%2Froot%2Fclientcert%2Fca-cert.pem%26ssl-cert%3D%2Fro\
ot%2Fclientcert%2Fclient-cert.pem%26ssl-key%3D%2Froot%2Fclientcert%2Fclient-key
.pem

См. для получения дополнительной информации.

Чтобы установить зашифрованное соединение для сеанса скриптинга в режиме JavaScript или Python, установите информацию SSL в словаре connectionData. Например:

mysql-js> var session=mysqlx.getSession({host: 'localhost',
                                             user: 'root',
                                             password: 'password',
                                             ssl_ca: "path_to_ca_file",
                                             ssl_cert: "path_to_cert_file",
                                             ssl_key: "path_to_key_file"});

Сессии, созданные с использованием mysqlx.getSession(), mysql.getSession() или mysql.getClassicSession(), используют ssl-mode=REQUIRED в качестве значения по умолчанию, если не указано другое значение ssl-mode, а также не указаны ssl-ca или ssl-capath. Если не указано значение ssl-mode, и указано любое из значений ssl-ca или ssl-capath, созданные сессии по умолчанию используют ssl-mode=VERIFY_CA.

См. для получения дополнительной информации.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-shell-8.4-en/mysql-shell-encrypted-connections.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API