Sunday, 16 September 2018

Unable to load user-specified certificate. The server will not accept a connection. You should verify that the certificate is correctly installed.

Today we had been asked by one of our stake holders where one of their DB server was down.Our team started investigating this issue, where we are not able to start SQL services and it keeps failing with errors. As we know error log is the one of the best place to check more details about the problem. Below is the our error log information.


2018-09-17 00:18:21.78 spid8s Server name is 'XXXXXXXX'. This is an informational message only. No user action is required.
2018-09-17 00:18:22.03 spid15s Error: 26014, Severity: 16, State: 1.
2018-09-17 00:18:22.03 spid15s Unable to load user-specified certificate [Cert Hash(sha1) "EFE72795A35AB8AC5096A929A3DE091CC3ED0A30"]. 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.
2018-09-17 00:18:22.07 spid15s Error: 17182, Severity: 16, State: 1.
2018-09-17 00:18:22.07 spid15s TDSSNIClient initialization failed with error 0x80092004, status code 0x80. Reason: Unable to initialize SSL support. Cannot find object or property.
2018-09-17 00:18:22.07 spid15s Error: 17182, Severity: 16, State: 1.
2018-09-17 00:18:22.07 spid15s TDSSNIClient initialization failed with error 0x80092004, status code 0x1. Reason: Initialization failed with an infrastructure error. Check for previous errors. Cannot find object or property.


Above lines of ERRORLOG has interesting message “Unable to load user-specified certificate [Cert Hash(sha1) “EFE72795A35AB8AC5096A929A3DE091CC3ED0A30”]. 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”

The certificate hash value if picked via “Certificate” registry key and once value is picked, certificate store is checked for the certificate (type, subject, thumbprint etc. would be checked)

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.\MSSQLServer\SuperSocketNetLib

Below is the registry key on our supported server .


Resolution :

If you are not using a certificate, then you can go ahead and clean up the value in the registry like below.

If you are using the certificate, then make sure it is installed correctly and it is having right thumbprint, subject etc.>/br>
Reference: https://blog.sqlauthority.com