SQL Server служба не может запуститься после настройки экземпляра для использования сертификата уровня безопасных сокетов

Эта статья поможет устранить проблему, которая возникает после настройки SSL-сертификата, использующего расширенный поставщик шифрования (Майкрософт) 1.0.

Оригинальная версия продукта: SQL Server
Исходный номер базы знаний: 928779

Симптомы

В этом сценарии вы настраиваете экземпляр SQL Server для использования SSL-сертификата. SSL-сертификат использует расширенный поставщик шифрования 1.0.

При попытке запустить службу SQL Server в этом сценарии в файл SQL Server errorlog записываются следующие сообщения об ошибках:

Error: 26014, Severity: 16, State: 1.
Unable to load user-specified certificate [Cert Hash(sha1) "%hs"]. The server will not accept a connection. You should verify that the certificate is correctly installed. See "Configuring Certificate for Use by SSL" in Books Online.

Error: 17182, Severity: 16, State: 1.
TDSSNIClient initialization failed with error 0x80092004, status code 0x80. Reason: Unable to initialize SSL support. Cannot find object or property.

Error: 17826, Severity: 18, State: 3.
Could not start the network library because of an internal error in the network library. To determine the cause, review the errors immediately preceding this one in the error log.

Error: 17120, Severity: 16, State: 1.
SQL Server could not spawn FRunCommunicationsManager thread. Check the SQL Server error log and the Windows event logs for information about possible related problems.

Причина

Эта проблема возникает из-за того, что в качестве сертификата сервера нельзя использовать сертификат с расширенным поставщиком шифрования версии 1.0.

Разрешение

Чтобы устранить эту проблему, используйте любой из следующих методов:

  • Не указывайте сертификат, который позволит SQL Server создать самозаверяющий сертификат. Для этого оставьте поле Сертификат пустым в диспетчер конфигурации SQL Server.

    Дополнительные сведения см. на следующих сайтах:

  • Используйте сертификат, который использует поставщик шифрования канала RSA для сертификата SQL Server.

  • Используйте диспетчер конфигурации SQL Server для настройки сертификата. Начиная с SQL Server 2019 г. вы можете использовать Configuration Manager SQL для просмотра и проверки сертификатов, установленных в экземпляре SQL Server, чтобы определить, какие сертификаты могут быть близки к истечению срока действия и выполнять другие задачи. Дополнительные сведения см. в разделе Управление сертификатами (диспетчер конфигурации SQL Server)

Дополнительная информация

SSL-сертификаты, использующие расширенный поставщик шифрования 1.0, можно использовать для клиентских сертификатов. Однако сертификаты непригодны в качестве сертификатов сервера. Чтобы определить поставщика сертификата, выполните команду в командной строке: certutil -v -store my.

В разделе "Симптомы " указано следующее сообщение об ошибке:

Сбой инициализации сервера даты и времени TDSSNIClient с ошибкой 0x80092004, код состояния 0x80.

В этом сообщении об ошибке состояние ошибки 0x80 указывает, что в SSL-сертификате возникла проблема. Кроме того, 0x80092004 — это код ошибки интерфейса поставщика поддержки безопасности (SSPI), который преобразуется в CRYPT_E_NOT_FOUND.