I have created a Self Signed Certificate and I am trying to start SQL Server 2012 with the certificate, it fails with error object of property not found. Service does not start at all.
But I removed certificate and I am able to start SQL Server.
However, I tried to connect to SQL server with Encrypt = true and Trust Certificate = true, SQL Server Client was able to connect to SQL Server. Does SQL Server automatically uses a self signed certificate from 2012 onwards?
If I set Encrypt = true and Trust Certificate = false, it gives me trust error as well. I have not installed certificate on SQL Server 2012 when I had installed it.
- Is it a bug in SQL Server Client Library? That it is connecting with parameters Encrypt = true and Trust = true, even when there is no certificate and connection is actually not secure.
- Does SQL Server 2012 automatically uses self signed certificate if not configured?
I can only repeat what I wrote in the comment to your question: without posting more details probably nobody can help you directly.
You can read this and this or this for additional information which certificates can be used by SQL Server.
Here you can find information about properties of the certificate and the private key which will be created. For the key it’s very important to have
AT_KEYEXCHANGEKeySpec option. It’s difficult to change the options later (it is possible by usagecertutil.exewith -importPFX andAT_KEYEXCHANGE, but it’s really tricky). Self-Signed certificate which need be used for Core Signing for example should haveAT_SIGNATUREKeySpec option in opposite. So you can’t just get some unknown Self-Signed certificate and to hope that it can be used for SSL encryption. I recommend you to use MakeCert.exe utility to create new certificate, install it and use SQL Server Configuration Manager to configure it for usage by SQL Server.In the article or in another one you will find additional information how to use MakeCert.exe to create Self-Signed certificate which can be used by SQL Server.