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


Подключение для SQL Server со строгим шифрованием

Область применения: SQL Server 2022 (16.x)

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

В этой статье описано, как подключиться к SQL Server 2022 (16.x) и более поздним версиям с помощью строгого типа подключения.

Предварительные требования

Подключение SQL Server с помощью приложения .NET

Сведения о создании и подключении к SQL Server с использованием типа шифрования strict см. в разделе Синтаксис строки подключения о том, как правильно создать строку подключения. Дополнительные сведения о новых свойствах строки подключения см. в разделе Дополнительные изменения в свойствах шифрования строки подключения.

Подключение с использованием DSN ODBC

Вы можете проверить подключение с типом шифрования подключения Strict, используя DSN ODBC для SQL Server.

  1. Выполните поиск приложения Источники данных ODBC в Windows.

    Снимок экрана: приложение источников данных O D B C.

  2. Убедитесь, что у вас установлен актуальный драйвер ODBC, перейдя на вкладку Драйверы администратора источника данных ODBC.

    Снимок экрана: доступные драйверы.

  3. На вкладке Системный DSN выберите Добавить, чтобы создать DSN. Затем выберите Драйвер ODBC 18 для SQL Server. Выберите Готово. Мы будем использовать это для проверки подключения.

  4. В окне создания источника данных в SQL Server укажите имя этого источника данных и добавьте имя сервера SQL Server 2022 (16.x) на сервер. Выберите Далее.

    Снимок экрана: создание источника данных с помощью драйвера O D B C.

  5. Используйте все значения по умолчанию для всех параметров, пока не отобразится экран с разделом Шифрование подключения. Выберите Строгий. Если введенное имя сервера отличается от имени сервера в сертификате или вместо него используется IP-адрес, задайте для параметра Имя узла в сертификате имя, используемое в сертификате. Выберите Готово.

    Снимок экрана: строгий тип шифрования.

  6. Когда появится диалоговое окно Настройка ODBC Microsoft SQL Server, нажмите кнопку Проверить источник данных..., чтобы проверить подключение. При этом будет принудительно применено подключение strict к SQL Server для этого теста.

Вы также можете проверить подключение к SQL Server с шифрованием strict с помощью драйвера OLE DB с универсальным каналом передачи данных.

  1. Чтобы создать UDL-файл для проверки подключения, щелкните правой кнопкой мыши рабочий стол и выберите Создать>Текстовый документ. Понадобится изменить расширение с txt на udl. Вы можете присвоить файлу любое имя.

    Примечание.

    Чтобы изменить расширение с txt на udl, вам нужно видеть имя расширения. Если расширение не отображается, можно включить просмотр расширения, открыв Проводник>Просмотр>Показать>Расширения имен файлов.

  2. Откройте созданный UDL-файл и перейдите на вкладку Поставщик, чтобы выбрать драйвер Microsoft OLE DB 19 для SQL Server. Выберите Далее>>.

    Снимок экрана: экран поставщика U D L.

  3. На вкладке Подключение введите имя сервера SQL Server и выберите метод проверки подлинности, используемый для входа в SQL Server.

    Снимок экрана: экран подключения U D L.

  4. На вкладке Дополнительно выберите значение Строгий для параметра Шифрование подключения. Если введенное имя сервера отличается от имени сервера в сертификате или вместо него используется IP-адрес, задайте для параметра Имя узла в сертификате имя, используемое в сертификате. Перейдите назад на вкладку Подключение после завершения.

    Снимок экрана: расширенный экран U D L.

  5. Выберите Проверить подключение, чтобы проверить подключение с шифрованием подключения strict.

    Снимок экрана: экран подключения U D L и проверка подключения.

Подключение с помощью SSMS

Начиная с версии 20, вы можете применить строгое шифрование в SQL Server Management Studio (SSMS) на вкладке "Имена входа " диалогового окна "Подключение к серверу ":

Снимок экрана: диалоговое окно подключения к серверу в SQL Server Management Studio.

Подключение к группе доступности AlwaysOn

Начиная с предварительной версии SQL Server 2025 (17.x), можно зашифровать коммуникацию между отказоустойчивым кластером Windows Server и репликой группы доступности Always On с помощью типа шифрования подключения Strict или Mandatory. Группа доступности может применять шифрование только в том случае, если он основан на отказоустойчивом кластере Windows Server. Другие типы групп доступности не поддерживают строгое шифрование.

Действия отличаются в зависимости от того, существует ли ваша доступность.

Чтобы принудительно применить строгое шифрование к новой группе доступности, выполните следующие действия.

  1. Если вы еще этого не сделали, импортируйте сертификат TLS в каждую реплику группы доступности, как определено требованиями к сертификату. Перезапустите каждый экземпляр SQL Server после импорта сертификата.
  2. Проверьте подключения к каждой реплике SQL Server с помощью одного из методов, упомянутых в этой статье, которые применяют шифрование.
  3. CREATE AVAILABILITY GROUP с свойством, заданным EncryptStrict в CLUSTER_CONNECTION_OPTIONS предложении для группы доступности. Это гарантирует, что все подключения к группе доступности используют указанный тип шифрования.
  4. Если группа доступности в настоящее время находится в сети, сбой группы доступности на вторичную реплику, чтобы применить новые параметры шифрования к группе доступности. Если группа доступности не включено, это может быть ClusterConnectionOptions неправильно задано. Проверьте cluster.logошибок ODBC , связанных с кластером, которые не удалось подключиться к реплике SQL Server. При необходимости можно завершить сбой группы доступности обратно в исходную первичную реплику после подключения новой вторичной реплики к группе доступности.
  5. (Необязательно) Для дальнейшего применения шифрования можно задать параметр Yes в свойствах ДИСПЕТЧЕРа конфигурации SQL Server для протокола подключения для каждой реплики. Этот параметр гарантирует, что все подключения к репликам группы доступности используют строгое шифрование. Перезапустите каждую реплику SQL Server после изменения этого параметра.

Подключение к экземпляру отказоустойчивого кластера

Начиная с предварительной версии SQL Server 2025 (17.x), можно зашифровать связь между отказоустойчивым кластером Windows Server и экземпляром кластера Always On с использованием Strict или Mandatory типа шифрования подключения. Для этого выполните следующие действия.

  1. Если вы еще не сделали этого, импортируйте сертификат TLS на каждый узел отказоустойчивого кластера, как определено требованиями к сертификату. Перезапустите экземпляр SQL Server после импорта сертификата.
  2. Проверьте подключения к экземпляру отказоустойчивого кластера с помощью одного из методов, упомянутых в этой статье, которые применяют шифрование.
  3. ALTER SERVER CONFIGURATION с CLUSTER_CONNECTION_OPTIONS предложением Encrypt , чтобы задать для Mandatory свойства значение или Strictзначение . Это гарантирует, что все подключения к экземпляру отказоустойчивого кластера используют указанный тип шифрования.
  4. Отработка отказа экземпляра на дополнительный узел, чтобы применить новые параметры шифрования к экземпляру отказоустойчивого кластера. Если экземпляр отказоустойчивого кластера не работает, это может быть ClusterConnectionOptions неправильно задано. Проверьте cluster.logна наличие ошибок ODBC , связанных с кластером, которые не удалось подключиться к экземпляру SQL Server. При необходимости экземпляр можно вернуться к исходному первичному узлу после подключения нового вторичного узла к экземпляру отказоустойчивого кластера.
  5. (Необязательно) Для дальнейшего применения шифрования можно задать параметр Yes в свойствах ДИСПЕТЧЕРа конфигурации SQL Server для протокола подключения для каждого узла в кластере. Этот параметр гарантирует, что все подключения к экземпляру отказоустойчивого кластера используют строгое шифрование. Внесите это изменение на дополнительный узел, отработку отказа экземпляра на него, а затем внесите изменения на основной узел.

Принудительное шифрование с помощью диспетчера конфигурации SQL Server

Строгое шифрование можно применить с помощью диспетчера конфигурации SQL Server, начиная с SQL Server 2022 (16.x). Для этого выполните следующие действия.

  1. Откройте диспетчер конфигурации SQL Server.

  2. В левой области разверните узел конфигурации сети SQL Server и выберите протоколы для [Имя_экземпляра].

  3. Щелкните правой кнопкой мыши TCP/IP и выберите пункт "Свойства".

  4. В диалоговом окне "Свойства TCP/IP " перейдите на вкладку "Флаги ", а затем выберите "Да " для параметра "Принудительное строгое шифрование ":

    Снимок экрана: параметр принудительного строгого шифрования в диспетчере конфигурации SQL Server.

  5. Перезапустите экземпляр SQL Server во время периода обслуживания, чтобы применить изменения.

Замечания

Если вы видите SSL certificate validation failed, убедитесь в том, что:

  • Сертификат сервера действителен на компьютере, который используется для тестирования
  • По крайней мере одно из следующих значений имеет значение true:
    • Поставщик SQL Server совпадает с именем ЦС или одним из DNS-имен в сертификате.
    • Свойство HostNameInCertificate строки подключения совпадает с именем ЦС или одним из DNS-имен в сертификате.