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


Особые случаи шифрования подключений к SQL Server

Клиентский компьютер должен доверять сертификату сервера, чтобы клиент смог запросить ШИФРОВАНИЕ SSL, и сертификат должен уже существовать на сервере. Наиболее распространенный сценарий шифрования SQL Server включает в себя среды, которые:

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

В этом сценарии вам не нужно выполнять дополнительные действия для успешного шифрования после настройки SQL Server для шифрования в рамках процедуры, описанной в разделе "Настройка SQL Server для шифрования". В этой статье приведены процедуры шифрования подключений к SQL Server для менее распространенных сценариев, которые не рассматриваются в настройке SQL Server для шифрования.

Примечание.

Полный список участников в доверенной корневой программе Майкрософт см. в разделе "Список участников " Доверенные корневые программы Майкрософт".

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

  1. Настройте сертификат в SQL Server в зависимости от процедуры, описанной в статье "Настройка SQL Server для использования сертификатов".
  2. Укажите ключевое слово шифрования в свойствах подключения к "Да" или "True". Например, если вы используете драйвер Microsoft ODBC для SQL Server, строка подключения следует указатьEncrypt=yes;.

Использование сертификата, выданного внутренним ЦС или созданным с помощью New-SelfSignedCertificate или makecert

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

После выполнения обоих процедур, описанных на шаге 1. Настройка SQL Server для использования сертификатов и шага 2. Настройка параметров шифрования в SQL Server , описанных в разделе "Настройка SQL Server для шифрования", используйте один из следующих параметров для настройки клиентского приложения для шифрования.

Вариант 1. Настройка клиентских приложений для сертификата сервера доверия. Этот параметр приведет к пропустить шаг, который проверяет сертификат сервера и продолжит процесс шифрования. Например, если вы используете SQL Server Management Studio, на странице "Параметры" можно выбрать сертификатсервера доверия.

Вариант 2. На каждом клиенте добавьте центр выдачи сертификата в хранилище доверенных корневых центров, выполнив следующие действия:

  1. Экспортируйте сертификат с компьютера под управлением SQL Server с помощью процедуры, описанной в сертификате сервера экспорта.
  2. Импортируйте сертификат с помощью процедуры, описанной в разделе "Добавление частного центра сертификации( ЦС) в хранилище сертификатов доверенных корневых центров сертификации.

Сценарий 2. Только некоторые клиенты нуждаются в зашифрованных подключениях

После настройки сертификата для SQL Server, как описано на шаге 1. Настройка SQL Server для использования сертификатов в настройке SQL Server для шифрования используйте один из следующих параметров, чтобы настроить клиентское приложение для шифрования:

Вариант 1. Настройте клиентские приложения для доверия к сертификату сервера и укажите ключевое слово шифрования в свойствах подключения значение "Да" или "True". Например, если вы используете драйвер Microsoft ODBC для SQL Server, строка подключения следует указатьEncrypt=Yes;Trust Server Certificate=Yes;.

Дополнительные сведения о сертификатах сервера и шифровании см. в разделе Использование TrustServerCertificate.

Вариант 2. На каждом клиенте добавьте центр выдачи сертификата в хранилище доверенных корневых центров и укажите параметры шифрования в строка подключения:

  1. Экспортируйте сертификат с компьютера под управлением SQL Server с помощью процедуры, описанной в статье "Экспорт сертификата " с компьютера под управлением SQL Server.
  2. Импортируйте сертификат.
  3. Укажите ключевое слово шифрования в свойствах подключения к "Да" или "True". Например, если вы используете драйвер Microsoft OLEDB для SQL Server, строка подключения должен указать использование шифрования данных = True;

Использование самозаверяющего сертификата, автоматически созданного SQL Server

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

  1. Включите шифрование в SQL Server с помощью шага 2. Настройка параметров шифрования в SQL Server , описанная в разделе "Настройка SQL Server для шифрования".

  2. Настройте клиентские приложения для доверия к сертификату сервера. Доверие сертификату сервера приведет к пропустить шаг, который проверяет сертификат сервера и продолжит процесс шифрования. Например, если вы используете SQL Server Management Studio, на странице "Параметры" можно выбрать сертификатсервера доверия.

Сценарий 2. Только некоторые клиенты нуждаются в зашифрованных подключениях

Настройте клиентские приложения для доверия сертификату сервера и укажите ключевое слово шифрования в свойствах подключения к "Да" или "True". Например, если вы используете драйвер Microsoft ODBC для SQL Server, строка подключения следует указатьEncrypt=Yes;Trust Server Certificate=Yes;.

Предупреждение

SSL-подключения, зашифрованные с помощью самозаверяющего сертификата, не обеспечивают надежную безопасность, так как длина ключа в самозаверяющих сертификатах короче, чем ключ в сертификатах, созданных ЦС. Они уязвимы для атак "злоумышленник в середине". Вы не должны полагаться на SSL с помощью самозаверяющих сертификатов в рабочей среде или на серверах, подключенных к Интернету.

Примечание.

Для этого сценария дополнительная конфигурация не требуется.

Следующие шаги