Поделиться через


Поддержка TLS 1.3

Применимо к: SQL Server 2022 (16.x) и более поздних версий базы данных SQLAzure Для Управляемого экземпляраSQL Azure в Microsoft Fabric

SQL Server (начиная с SQL Server 2022 (16.x)), База данных SQL Azure и Управляемый экземпляр SQL Azure поддерживают протокол TLS 1.3 при использовании табличного потока данных (TDS) 8.0.

Внимание

Даже при поддержке TLS 1.3 для подключений TDS протокол TLS 1.2 по-прежнему требуется для запуска вспомогательных служб SQL Server. Не отключайте TLS 1.2 на компьютере.

SQL Server 2019 (15.x) и более ранних версий не поддерживают TLS 1.3.

Различия между TLS 1.2 и TLS 1.3

TLS 1.3 сокращает количество круговых путей с двух до одного на этапе подтверждения, благодаря чему он более быстрый и безопасный, чем TLS 1.2. Пакет hello server hello, содержащий сертификат сервера, шифруется, и возобновление одно время кругового пути (1-RTT) прекращено и заменено возобновлением 0-RTT на основе общего ресурса ключа клиента. В TLS 1.3 добавлена защита от прекращения определенных шифров и алгоритмов.

Ниже приведен список алгоритмов и шифров, удаленных в TLS 1.3:

  • Шифр потока RC4
  • Обмен ключами RSA
  • Хэш-функция SHA-1
  • Шифры режима CBC (блок)
  • Алгоритм MD5
  • Различные неэфемерные группы Diffie-Hellman
  • Шифры с надежностью уровня EXPORT
  • DES
  • 3DES

Поддержка драйверов

Просмотрите матрицу поддержки функций драйвера, чтобы определить, какие драйверы в настоящее время поддерживают TLS 1.3.

Поддержка операционных систем

В настоящее время следующие операционные системы поддерживают TLS 1.3:

Поддержка SQL Server 2025

SQL Server 2025 (17.x) предоставляет поддержку TLS 1.3 для следующих функций:

Ограничения установки

Установка SQL Server 2025 завершается ошибкой, если TLS 1.3 является единственной версией TLS, включенной в операционной системе. Процесс установки требует, чтобы во время установки был доступен ПРОТОКОЛ TLS 1.2. После завершения установки tls 1.2 можно отключить при необходимости.

Сообщение об ошибке во время установки: A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - No process is on the other end of the pipe.)

Требования к сертификату

При использовании TDS 8.0 с SQL Server 2025 необходимо выполнить определенные требования к сертификату:

  • Доверенные сертификаты: сертификаты должны выдаваться доверенным центром сертификации (ЦС). Самозаверяющий сертификат больше не принимается по умолчанию с драйвером Microsoft OLE DB для SQL Server версии 19.
  • Проверка сертификата: TrustServerCertificate необходимо задать False или No. Драйвер Microsoft OLE DB для SQL Server версии 19 проверяет цепочку доверия сертификата и проверку сертификатов нельзя обойти.
  • Требования к альтернативному имени субъекта (SAN): сертификаты должны включать полное доменное имя (FQDN) и имя Netbios в списке SAN. SQL Server Management Studio (SSMS) часто использует имена Netbios при подключении, а отсутствующие записи вызывают ошибки проверки.
  • Планирование записей SAN: включите во время выдачи сертификата все возможные имена подключений клиента (FQDN, Netbios, псевдонимы служб). Для добавления имен позже требуется создать сертификат и перезапустить экземпляр SQL Server.

Дополнительные сведения о проверке сертификатов см. в разделе "Шифрование и проверка сертификатов" — OLE DB Driver for SQL Server.

Безопасные конфигурации по умолчанию в SQL Server 2025

SQL Server 2025 предоставляет безопасные конфигурации по умолчанию для нескольких функций, которые теперь используют TDS 8.0 с шифрованием, включенным по умолчанию:

  • Агент SQL Server использует драйвер Microsoft OLE DB для SQL Server версии 19 с , и требует наличия действительных сертификатов сервера Encrypt=Mandatory. Если включена только версия TLS 1.3, необходимо настроить Encrypt=Strict (принудительное шифрование).

  • Группы доступности AlwaysOn и ФКК: использует драйвер ODBC для SQL Server версии 18 по Encrypt=Mandatory умолчанию. В отличие от других функций, группы доступности AlwaysOn и ФК позволяют TrustServerCertificate=True выполнять самозаверяемые сценарии.

  • Связанные серверы: использует драйвер Microsoft OLE DB для SQL Server версии 19 по Encrypt=Mandatory умолчанию. Параметр шифрования должен быть указан в строке подключения при выборе другого экземпляра SQL Server.

  • Доставка журналов: использует драйвер Microsoft OLE DB для SQL Server версии 19 и Encrypt=Mandatory требует допустимых сертификатов сервера. При выполнении обновления на месте с более низкой версии, которая не поддерживает последние конфигурации безопасности, если параметры шифрования не переопределяются явным образом с более безопасным параметром, доставка журналов будет использоваться TrustServerCertificate=True для обеспечения обратной совместимости. Чтобы применить TLS 1.3 и Encrypt=Strict с TDS 8.0 после обновления, сначала удалите, а затем повторно создайте топологию с обновленными параметрами в хранимых процедурах лог-шиппинга.

  • Репликация: (транзакция, моментальный снимок, слияние) использует драйвер Microsoft OLE DB для SQL Server версии 19 с Encrypt=Mandatory и требует допустимых сертификатов с TrustServerCertificate=False.

  • Database Mail: параметры по умолчанию — это Encrypt=Optional и TrustServerCertificate=True. При принудительном применении TLS 1.3 эти значения изменяются на Encrypt=Strict и TrustServerCertificate=False. По умолчанию Управляемый экземпляр SQL Azure использует протокол TLS 1.3.

  • PolyBase: использует драйвер ODBC для SQL Server версии 18 с Encrypt=Yes (Mandatory). PolyBase позволяет TrustServerCertificate=True выполнять самозаверяемые сценарии.

  • Модуль записи VSS SQL: при подключении к экземпляру SQL Server 2025 с Encryption=Strict помощью модуль записи VSS SQL, используются протоколы TLS 1.3 и TDS 8.0 для части этого подключения, отличной от Виртуального Устройства Интерфейса (VDI).

Требования для конкретного компонента

  • Агент SQL Server с TLS 1.3: следует использовать принудительное строгое шифрование (TDS 8.0), если включена только версия TLS 1.3. Более низкие параметры шифрования (Mandatory или Optional) приводят к сбоям подключения.

  • Задания T-SQL агента SQL Server: задания агента SQL Server T-SQL, подключающиеся к локальному экземпляру, наследуют параметры шифрования агента SQL Server.

  • Модули PowerShell: SQLPS.exe и модуль PowerShell SQLPS в настоящее время не поддерживаются для TDS 8.0.

  • Группы доступности Always On и ФКИ: чтобы настроить строгое шифрование с помощью TDS 8.0, используйте CLUSTER_CONNECTION_OPTIONS и Encrypt=Strict с переключением на резерв для применения параметров.