Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: SQL Server 2022 (16.x) и более поздних версий
Строгое шифрование подключений обеспечивает соблюдение рекомендаций по обеспечению безопасности и позволяет управлять трафиком SQL Server посредством стандартным сетевых устройств.
В этой статье описано, как подключиться к SQL Server 2022 (16.x) и более поздним версиям с помощью строгого типа подключения.
Предварительные требования
- SQL Server 2022 (16.x) или более поздней версии
- Драйвер ODBC или OLE DB для SQL Server
- Драйвер ODBC для SQL Server версии 18.1.2.1 или более поздней
- OLE DB Driver for SQL Server версии 19.2.0 или более поздней
- Создайте и установите сертификат TLS в SQL Server. Дополнительные сведения см. в статье Включение шифрования соединений в компоненте ядро СУБД
Подключение SQL Server с помощью приложения .NET
Сведения о создании и подключении к SQL Server с использованием типа шифрования strict см. в разделе Синтаксис строки подключения о том, как правильно создать строку подключения. Дополнительные сведения о новых свойствах строки подключения см. в разделе Дополнительные изменения в свойствах шифрования строки подключения.
Подключение с использованием DSN ODBC
Вы можете проверить подключение с типом шифрования подключения Strict, используя DSN ODBC для SQL Server.
Выполните поиск приложения Источники данных ODBC в Windows.
Убедитесь, что у вас установлен актуальный драйвер ODBC, перейдя на вкладку Драйверы администратора источника данных ODBC.
На вкладке Системный DSN выберите Добавить, чтобы создать DSN. Затем выберите Драйвер ODBC 18 для SQL Server. Выберите Готово. Мы будем использовать это для проверки подключения.
В окне создания источника данных в SQL Server укажите имя этого источника данных и добавьте имя сервера SQL Server 2022 (16.x) на сервер. Выберите Далее.
Используйте все значения по умолчанию для всех параметров, пока не отобразится экран с разделом Шифрование подключения. Выберите Строгий. Если введенное имя сервера отличается от имени сервера в сертификате или вместо него используется IP-адрес, задайте для параметра Имя узла в сертификате имя, используемое в сертификате. Выберите Готово.
Когда появится диалоговое окно Настройка ODBC Microsoft SQL Server, нажмите кнопку Проверить источник данных..., чтобы проверить подключение. Это должно обеспечить подключение
strictк SQL Server для этого теста.
Подключение с помощью универсального канала передачи данных
Вы также можете проверить подключение к SQL Server с шифрованием strict с помощью драйвера OLE DB с универсальным каналом передачи данных.
Чтобы создать UDL-файл для проверки подключения, щелкните правой кнопкой мыши рабочий стол и выберите Создать>Текстовый документ. Понадобится изменить расширение с
txtнаudl. Вы можете присвоить файлу любое имя.Примечание.
Чтобы изменить расширение с
txtнаudl, вам нужно видеть имя расширения. Если расширение не отображается, можно включить просмотр расширения, открыв Проводник>Просмотр>Показать>Расширения имен файлов.Откройте созданный UDL-файл и перейдите на вкладку Поставщик, чтобы выбрать драйвер Microsoft OLE DB 19 для SQL Server. Выберите Далее>>.
На вкладке Подключение введите имя сервера SQL Server и выберите метод проверки подлинности, используемый для входа в SQL Server.
На вкладке Дополнительно выберите значение Строгий для параметра Шифрование подключения. Если введенное имя сервера отличается от имени сервера в сертификате или вместо него используется IP-адрес, задайте для параметра Имя узла в сертификате имя, используемое в сертификате. Перейдите назад на вкладку Подключение после завершения.
Выберите Проверить подключение, чтобы проверить подключение с шифрованием подключения
strict.
Подключение с помощью SSMS
Начиная с версии 20, вы можете применить строгое шифрование в SQL Server Management Studio (SSMS) на вкладке "Имена входа " диалогового окна "Подключение к серверу ":
Подключитесь к группе доступности Always On
Начиная с SQL Server 2025 (17.x), можно шифровать связь между отказоустойчивым кластером Windows Server и репликой группы доступности Always On с помощью типа шифрования подключения Strict или Mandatory. Группа доступности может применять шифрование только в том случае, если он основан на отказоустойчивом кластере Windows Server. Другие типы групп доступности не поддерживают строгое шифрование.
Шаги различаются в зависимости от того, заданы ли уже параметры вашей доступности.
Чтобы принудительно применить строгое шифрование к новой группе доступности, выполните следующие действия.
- Если вы еще этого не сделали, импортируйте сертификат TLS в каждую реплику группы доступности, как определено требованиями к сертификату. Перезапустите каждый экземпляр SQL Server после импорта сертификата.
- Проверьте подключения к каждой реплике SQL Server с помощью одного из методов, упомянутых в этой статье, которые применяют шифрование.
-
CREATE AVAILABILITY GROUP с свойством, заданным
EncryptStrictвCLUSTER_CONNECTION_OPTIONSпредложении для группы доступности. Это гарантирует, что все подключения к группе доступности используют указанный тип шифрования. - Если группа доступности в настоящее время находится в сети, переключите её на вторичную реплику для применения новых параметров шифрования к группе доступности. Если группа доступности не активна, возможно,
ClusterConnectionOptionsзадано неправильно. Проверьте cluster.log на наличие ошибки ODBC, связанной с тем, что кластер не удалось подключиться к реплике сервера SQL. При необходимости можно переключить группу доступности обратно на исходную первичную реплику после того, как новая вторичная реплика подключена к группе доступности и онлайн. - (Необязательно) Для еще более строгого применения шифрования можно установить параметр Принудительное строгое шифрование в
Yesв свойствах Диспетчера конфигурации SQL Server для протокола подключения каждой реплики. Этот параметр гарантирует, что все подключения к репликам группы доступности используют строгое шифрование. Перезапустите каждую реплику SQL Server после изменения этого параметра.
Подключитесь к экземпляру отказоустойчивого кластера
Начиная с SQL Server 2025 (17.x), вы можете шифровать связь между отказоустойчивым кластером Windows Server и экземпляром кластера с функцией Always On с использованием типа шифрования подключения Strict или Mandatory. Для этого выполните следующие действия.
- Если вы еще не сделали этого, импортируйте сертификат TLS на каждый узел отказоустойчивого кластера, как определено требованиями к сертификату. Перезапустите экземпляр SQL Server после импорта сертификата.
- Проверьте подключения к экземпляру отказоустойчивого кластера с помощью одного из методов, упомянутых в этой статье, которые применяют шифрование.
-
ALTER SERVER CONFIGURATION с предложением
CLUSTER_CONNECTION_OPTIONS, чтобы задать для свойстваEncryptзначениеMandatoryилиStrict. Это гарантирует, что все подключения к экземпляру отказоустойчивого кластера используют указанный тип шифрования. - Перенос экземпляра на вторичный узел для применения новых параметров шифрования к экземпляру отказоустойчивого кластера. Если экземпляр отказоустойчивого кластера не может запуститься, это может быть связано с тем, что
ClusterConnectionOptionsнеправильно задано. Проверьте cluster.log на наличие ошибок ODBC, связанных с неудачной попыткой кластера подключиться к экземпляру SQL Server. При необходимости можно вернуть экземпляр на исходный первичный узел после того, как новый вторичный узел будет в сети и подключен к экземпляру отказоустойчивого кластера. - (Необязательно) Для дальнейшего применения шифрования можно задать параметр Force Strict Encryption в значение
Yesв свойствах Диспетчера конфигурации SQL Server для протокола подключения для каждого узла в кластере. Этот параметр гарантирует, что все подключения к экземпляру отказоустойчивого кластера используют строгое шифрование. Внесите это изменение на дополнительный узел, выполните отказоустойчивость экземпляра на него, а затем внесите изменение на основной узел.
Принудительное шифрование с помощью диспетчера конфигурации SQL Server
Строгое шифрование можно применить с помощью диспетчера конфигурации SQL Server, начиная с SQL Server 2022 (16.x). Для этого выполните следующие действия.
Откройте диспетчер конфигурации SQL Server.
В левой области разверните Конфигурация сети SQL Server и выберите Протоколы для [Имя_экземпляра].
Щелкните правой кнопкой мыши TCP/IP и выберите пункт "Свойства".
В диалоговом окне "Свойства TCP/IP " перейдите на вкладку "Флаги ", а затем выберите "Да " для параметра "Принудительное строгое шифрование ":
Перезапустите экземпляр SQL Server во время периода обслуживания, чтобы применить изменения.
Замечания
Если вы видите SSL certificate validation failed, убедитесь в том, что:
- Сертификат сервера действителен на компьютере, который используется для тестирования
- По крайней мере одно из следующих утверждений истинно:
- Поставщик SQL Server соответствует имени Центра сертификации или одному из DNS-имен в сертификате.
- Свойство
HostNameInCertificateстроки подключения совпадает с именем CA или одним из DNS-имен в сертификате.