Showing posts with label certificate. Show all posts
Showing posts with label certificate. Show all posts

Friday, March 23, 2012

ForceEncryption Parameter

Hi All,

I have a SSL certificate installed on my SQL Server 2005. There is a default certificate as well which was created by the database itself.

I have configured the database to use my own certificate and have also set the ForceEncryption to Yes on the server.

Now, I am expecting that if my ASP.NET code on a different machine tries to connect to the database without having the root certificate installed on client's certificate store, I should get an error. But, I am not getting an error.

But, I do get the following error when I set Encrypt = Yes

"ERROR: A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 0 - The requested name is valid and was found in the database, but it does not have the correct associated data being resolved for.)"

and, If I set Encrypt=No, I do not get any error again.

My understanding was that if server forces encryption then client should definitely have the root certificate. Is that incorrect understanding?

Also, I want to know about what will happen if ForceEncryption = No on the server and Encrypt = Yes in the connection string.

Could you please help me understand the results of various options like this?

Additionally, with the server still Forcing Encryption, if I do install the root and intermediate root on my client then I get the following error with Encrypt = Yes.

"ERROR: A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 0 - The requested name is valid and was found in the database, but it does not have the correct associated data being resolved for.)"

The Encrypt = No setting again does not give any error.

Thanks and Regards,

-Ajay Kumar Suri

Hi Ajay,

The validation of the server's certificate will only occur if encryption is forced on the client-side. Take a look at this posting for more info: http://blogs.msdn.com/dataaccess/archive/2005/08/05/448401.aspx

Il-Sung.

|||

Hi,

Thanks very much for your reply.

Could you please verify if my understanding now is correct for SQL Server 2005.

Server : Encryption On (Self Signed Certificate)

Client : Encryption off or not specified.

The channel is encrypted.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate not installed on client.

The channel is encrypted using the Self Signed SQL Server 2005 certificate instead.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate is installed on client.

The channel is encrypted using the server SSL certificate.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified or client has the root certificate.

Server : Encryption Off.

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified. This would use the self created certificate from the server.

Server : Encryption Off.

Client : Encryption Off.

No encryption.

I hope I have understood it correctly.

Please advise.

Best Regards,

-Ajay Kumar Suri

|||

Hi Ajay,

Not quite. I've added my comments in blue. The key thing to understand is that client will only try to validate the server's certificate if encryption is requested from the client side. Otherwise, no certificate validation is performed so there's no need to use Trust Server Certificate, even for a self-signed cert.

Server : Encryption On (Self Signed Certificate)

Client : Encryption off or not specified.

The channel is encrypted.

> Correct.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate not installed on client.

The channel is encrypted using the Self Signed SQL Server 2005 certificate instead.

> Incorrect. The channel is encrypted using the provisioned certficiate, not the self-signed cert.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate is installed on client.

The channel is encrypted using the server SSL certificate.

> Correct.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified or client has the root certificate.

> Correct.

Server : Encryption Off.

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified. This would use the self created certificate from the server.

> Depends if the server has a proper certificate provisioned or not. If not, then a self-signed cert would be used and you are correct that Trust Server Certificate must be specified.

Server : Encryption Off.

Client : Encryption Off.

No encryption.

> Correct, although the login packet will always be encrypted.

Hope this clears things up.

Il-Sung.

|||

Hi Sung,

Thanks very much for your comments.

It does clear a lot of things for me.

Best Regards,

-Ajay Kumar Suri

ForceEncryption Parameter

Hi All,

I have a SSL certificate installed on my SQL Server 2005. There is a default certificate as well which was created by the database itself.

I have configured the database to use my own certificate and have also set the ForceEncryption to Yes on the server.

Now, I am expecting that if my ASP.NET code on a different machine tries to connect to the database without having the root certificate installed on client's certificate store, I should get an error. But, I am not getting an error.

But, I do get the following error when I set Encrypt = Yes

"ERROR: A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 0 - The requested name is valid and was found in the database, but it does not have the correct associated data being resolved for.)"

and, If I set Encrypt=No, I do not get any error again.

My understanding was that if server forces encryption then client should definitely have the root certificate. Is that incorrect understanding?

Also, I want to know about what will happen if ForceEncryption = No on the server and Encrypt = Yes in the connection string.

Could you please help me understand the results of various options like this?

Additionally, with the server still Forcing Encryption, if I do install the root and intermediate root on my client then I get the following error with Encrypt = Yes.

"ERROR: A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 0 - The requested name is valid and was found in the database, but it does not have the correct associated data being resolved for.)"

The Encrypt = No setting again does not give any error.

Thanks and Regards,

-Ajay Kumar Suri

Hi Ajay,

The validation of the server's certificate will only occur if encryption is forced on the client-side. Take a look at this posting for more info: http://blogs.msdn.com/dataaccess/archive/2005/08/05/448401.aspx

Il-Sung.

|||

Hi,

Thanks very much for your reply.

Could you please verify if my understanding now is correct for SQL Server 2005.

Server : Encryption On (Self Signed Certificate)

Client : Encryption off or not specified.

The channel is encrypted.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate not installed on client.

The channel is encrypted using the Self Signed SQL Server 2005 certificate instead.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate is installed on client.

The channel is encrypted using the server SSL certificate.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified or client has the root certificate.

Server : Encryption Off.

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified. This would use the self created certificate from the server.

Server : Encryption Off.

Client : Encryption Off.

No encryption.

I hope I have understood it correctly.

Please advise.

Best Regards,

-Ajay Kumar Suri

|||

Hi Ajay,

Not quite. I've added my comments in blue. The key thing to understand is that client will only try to validate the server's certificate if encryption is requested from the client side. Otherwise, no certificate validation is performed so there's no need to use Trust Server Certificate, even for a self-signed cert.

Server : Encryption On (Self Signed Certificate)

Client : Encryption off or not specified.

The channel is encrypted.

> Correct.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate not installed on client.

The channel is encrypted using the Self Signed SQL Server 2005 certificate instead.

> Incorrect. The channel is encrypted using the provisioned certficiate, not the self-signed cert.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate is installed on client.

The channel is encrypted using the server SSL certificate.

> Correct.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified or client has the root certificate.

> Correct.

Server : Encryption Off.

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified. This would use the self created certificate from the server.

> Depends if the server has a proper certificate provisioned or not. If not, then a self-signed cert would be used and you are correct that Trust Server Certificate must be specified.

Server : Encryption Off.

Client : Encryption Off.

No encryption.

> Correct, although the login packet will always be encrypted.

Hope this clears things up.

Il-Sung.

|||

Hi Sung,

Thanks very much for your comments.

It does clear a lot of things for me.

Best Regards,

-Ajay Kumar Suri

ForceEncryption Parameter

Hi All,

I have a SSL certificate installed on my SQL Server 2005. There is a default certificate as well which was created by the database itself.

I have configured the database to use my own certificate and have also set the ForceEncryption to Yes on the server.

Now, I am expecting that if my ASP.NET code on a different machine tries to connect to the database without having the root certificate installed on client's certificate store, I should get an error. But, I am not getting an error.

But, I do get the following error when I set Encrypt = Yes

"ERROR: A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 0 - The requested name is valid and was found in the database, but it does not have the correct associated data being resolved for.)"

and, If I set Encrypt=No, I do not get any error again.

My understanding was that if server forces encryption then client should definitely have the root certificate. Is that incorrect understanding?

Also, I want to know about what will happen if ForceEncryption = No on the server and Encrypt = Yes in the connection string.

Could you please help me understand the results of various options like this?

Additionally, with the server still Forcing Encryption, if I do install the root and intermediate root on my client then I get the following error with Encrypt = Yes.

"ERROR: A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 0 - The requested name is valid and was found in the database, but it does not have the correct associated data being resolved for.)"

The Encrypt = No setting again does not give any error.

Thanks and Regards,

-Ajay Kumar Suri

Hi Ajay,

The validation of the server's certificate will only occur if encryption is forced on the client-side. Take a look at this posting for more info: http://blogs.msdn.com/dataaccess/archive/2005/08/05/448401.aspx

Il-Sung.

|||

Hi,

Thanks very much for your reply.

Could you please verify if my understanding now is correct for SQL Server 2005.

Server : Encryption On (Self Signed Certificate)

Client : Encryption off or not specified.

The channel is encrypted.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate not installed on client.

The channel is encrypted using the Self Signed SQL Server 2005 certificate instead.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate is installed on client.

The channel is encrypted using the server SSL certificate.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified or client has the root certificate.

Server : Encryption Off.

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified. This would use the self created certificate from the server.

Server : Encryption Off.

Client : Encryption Off.

No encryption.

I hope I have understood it correctly.

Please advise.

Best Regards,

-Ajay Kumar Suri

|||

Hi Ajay,

Not quite. I've added my comments in blue. The key thing to understand is that client will only try to validate the server's certificate if encryption is requested from the client side. Otherwise, no certificate validation is performed so there's no need to use Trust Server Certificate, even for a self-signed cert.

Server : Encryption On (Self Signed Certificate)

Client : Encryption off or not specified.

The channel is encrypted.

> Correct.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate not installed on client.

The channel is encrypted using the Self Signed SQL Server 2005 certificate instead.

> Incorrect. The channel is encrypted using the provisioned certficiate, not the self-signed cert.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate is installed on client.

The channel is encrypted using the server SSL certificate.

> Correct.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified or client has the root certificate.

> Correct.

Server : Encryption Off.

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified. This would use the self created certificate from the server.

> Depends if the server has a proper certificate provisioned or not. If not, then a self-signed cert would be used and you are correct that Trust Server Certificate must be specified.

Server : Encryption Off.

Client : Encryption Off.

No encryption.

> Correct, although the login packet will always be encrypted.

Hope this clears things up.

Il-Sung.

|||

Hi Sung,

Thanks very much for your comments.

It does clear a lot of things for me.

Best Regards,

-Ajay Kumar Suri

ForceEncryption Parameter

Hi All,

I have a SSL certificate installed on my SQL Server 2005. There is a default certificate as well which was created by the database itself.

I have configured the database to use my own certificate and have also set the ForceEncryption to Yes on the server.

Now, I am expecting that if my ASP.NET code on a different machine tries to connect to the database without having the root certificate installed on client's certificate store, I should get an error. But, I am not getting an error.

But, I do get the following error when I set Encrypt = Yes

"ERROR: A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 0 - The requested name is valid and was found in the database, but it does not have the correct associated data being resolved for.)"

and, If I set Encrypt=No, I do not get any error again.

My understanding was that if server forces encryption then client should definitely have the root certificate. Is that incorrect understanding?

Also, I want to know about what will happen if ForceEncryption = No on the server and Encrypt = Yes in the connection string.

Could you please help me understand the results of various options like this?

Additionally, with the server still Forcing Encryption, if I do install the root and intermediate root on my client then I get the following error with Encrypt = Yes.

"ERROR: A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 0 - The requested name is valid and was found in the database, but it does not have the correct associated data being resolved for.)"

The Encrypt = No setting again does not give any error.

Thanks and Regards,

-Ajay Kumar Suri

Hi Ajay,

The validation of the server's certificate will only occur if encryption is forced on the client-side. Take a look at this posting for more info: http://blogs.msdn.com/dataaccess/archive/2005/08/05/448401.aspx

Il-Sung.

|||

Hi,

Thanks very much for your reply.

Could you please verify if my understanding now is correct for SQL Server 2005.

Server : Encryption On (Self Signed Certificate)

Client : Encryption off or not specified.

The channel is encrypted.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate not installed on client.

The channel is encrypted using the Self Signed SQL Server 2005 certificate instead.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate is installed on client.

The channel is encrypted using the server SSL certificate.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified or client has the root certificate.

Server : Encryption Off.

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified. This would use the self created certificate from the server.

Server : Encryption Off.

Client : Encryption Off.

No encryption.

I hope I have understood it correctly.

Please advise.

Best Regards,

-Ajay Kumar Suri

|||

Hi Ajay,

Not quite. I've added my comments in blue. The key thing to understand is that client will only try to validate the server's certificate if encryption is requested from the client side. Otherwise, no certificate validation is performed so there's no need to use Trust Server Certificate, even for a self-signed cert.

Server : Encryption On (Self Signed Certificate)

Client : Encryption off or not specified.

The channel is encrypted.

> Correct.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate not installed on client.

The channel is encrypted using the Self Signed SQL Server 2005 certificate instead.

> Incorrect. The channel is encrypted using the provisioned certficiate, not the self-signed cert.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption off or not specified. Root Certificate is installed on client.

The channel is encrypted using the server SSL certificate.

> Correct.

Server : Encryption On (Certificate Issued by a Trusted Authority)

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified or client has the root certificate.

> Correct.

Server : Encryption Off.

Client : Encryption On.

Will result in problem unless Trust Server Certificate is specified. This would use the self created certificate from the server.

> Depends if the server has a proper certificate provisioned or not. If not, then a self-signed cert would be used and you are correct that Trust Server Certificate must be specified.

Server : Encryption Off.

Client : Encryption Off.

No encryption.

> Correct, although the login packet will always be encrypted.

Hope this clears things up.

Il-Sung.

|||

Hi Sung,

Thanks very much for your comments.

It does clear a lot of things for me.

Best Regards,

-Ajay Kumar Suri

Monday, March 19, 2012

Force encryption on server not working?

Hi,

I am at a loss here, unless I misunderstand the whole point about server encryption. My 2005 SQL server has a certificate from a trust CA, I have turned on the 'force encryption' flags on the server. My understanding is any client will be "force" to connect with encryption? I found out that unless I turn on encryption on my clients, the server will allow connections without the requiring encryption. Am I missing something here? Thanks for any help you can provide.

Hi anhtuan,

Your understanding is correct. If you force encryption on the server, then all connections from clients will be encrypted; if the client doesn't support encryption (e.g., very old MDAC clients), then the server will reject the connection. Basic question -- I assume that you restarted the server after setting the FORCE ENCRYPTION setting?

Il-Sung.

Force Encryption on client with Thawte certificate

Hello
I think that I have read every paper on the Internet about SSL and SQL
2000 and have "pains takingly" tried to implement every suggestion.
1. I have a certificate from Thawte installed on a Windows 2000 server
that also has SQL 2000 installed.
2. The name of the certificate is a FQDN.
3. I can set Force Encryption on the Server side, restart the SQL
Server and it starts normally.
4. I use network monitor and can see network traffic encrypted between
client and server.
5. When I turn off Force Encryption with the "server utility", I
restart the SQL Server.
6. I turn on Force Encrytion on the client side.
7. I try to connect to the server with SQL Query and get an SSL Error.
8. There is only one certificate on the server.
9. I set the "friendly name" on the certificate to the FQDN.
10. I have viewed the certificate and I see no errors and the path
looks good.
11. I think that I have all the SPs installed.
I am assuming that the certificate is installed correctly because when
I set Force Encryption on the server, SQL Server starts with no
problem.
When I reset Force Encryption with the "server utility" -- restart the
SQL Server -- and set Force Encryption with the "client utility", I get
the "SSL error" when I try to log in with Query analyzer.
Because the SQL Instance and the client application are on the same
machine, and because I can see the Thawte Server CA under the Authority
tab, that the client trusts Thawte. Out of desperation, I even tried to
do an export and import using IE -- though I did not think that was
necessary because both client and server are on the same mchine.
This should not be this difficult
Any help is greatly appreciated.
Thanks
Hi
I can't say I have tried this but BOL states (second sentence):
"SSL encryption works only with instances of SQL Server 2000 running on a
computer that has been assigned a certificate from a public certification
authority. The computer on which the application is running must also have a
root CA certificate from the same authority"
John
"norrad" wrote:

> Hello
> I think that I have read every paper on the Internet about SSL and SQL
> 2000 and have "pains takingly" tried to implement every suggestion.
> 1. I have a certificate from Thawte installed on a Windows 2000 server
> that also has SQL 2000 installed.
> 2. The name of the certificate is a FQDN.
> 3. I can set Force Encryption on the Server side, restart the SQL
> Server and it starts normally.
> 4. I use network monitor and can see network traffic encrypted between
> client and server.
> 5. When I turn off Force Encryption with the "server utility", I
> restart the SQL Server.
> 6. I turn on Force Encrytion on the client side.
> 7. I try to connect to the server with SQL Query and get an SSL Error.
> 8. There is only one certificate on the server.
> 9. I set the "friendly name" on the certificate to the FQDN.
> 10. I have viewed the certificate and I see no errors and the path
> looks good.
> 11. I think that I have all the SPs installed.
> I am assuming that the certificate is installed correctly because when
> I set Force Encryption on the server, SQL Server starts with no
> problem.
> When I reset Force Encryption with the "server utility" -- restart the
> SQL Server -- and set Force Encryption with the "client utility", I get
> the "SSL error" when I try to log in with Query analyzer.
>
> Because the SQL Instance and the client application are on the same
> machine, and because I can see the Thawte Server CA under the Authority
> tab, that the client trusts Thawte. Out of desperation, I even tried to
> do an export and import using IE -- though I did not think that was
> necessary because both client and server are on the same mchine.
>
> This should not be this difficult
> Any help is greatly appreciated.
> Thanks
>
|||Hello
Thanks
The Thawte Server CA is a trusted certification authority. It is
loaded by default with 2000 and because both SQL Server and Client are
on the same box, I should be ok and SQL server does start with the
certificate assigned.-- though I am sure that I am doing something
stupid.
Thanks for taking the time to respond. I have been working on this off
and on for two weeks. I see others with the same problem, I try to be
very carefull and implement the suggestions -- but still I get SSL
error
John Bell wrote:[vbcol=seagreen]
> Hi
> I can't say I have tried this but BOL states (second sentence):
> "SSL encryption works only with instances of SQL Server 2000 running on a
> computer that has been assigned a certificate from a public certification
> authority. The computer on which the application is running must also have a
> root CA certificate from the same authority"
> John
> "norrad" wrote:
|||Hi
I found these by searching the security news group
microsoft.public.sqlserver.security, the first one gives step by step details
on how to enable SSL on a client, you may actually want to try this on a
stand alone client to make sure that nothing else is encrypted, doing it on
the server will force encryption of other things such as DTS packages run
through xp_cmdshell etc.. The second article also states "For the client to
request the SSL encryption, the client computer must trust the server
certificate and the certificate must already exist on the server" You may
want to post the exact error number and message you are getting.
276553 HOW TO: Enable SSL Encryption for SQL Server 2000 with Certificate
Server
http://support.microsoft.com/?id=276553
316898 HOW TO: Enable SSL Encryption for SQL Server 2000 with Microsoft
http://support.microsoft.com/?id=316898
319349 BUG: Turning On the 'Force Protocol Encryption' Option Is
Irreversible
http://support.microsoft.com/?id=319349
John
"norrad" wrote:

> Hello
> Thanks
> The Thawte Server CA is a trusted certification authority. It is
> loaded by default with 2000 and because both SQL Server and Client are
> on the same box, I should be ok and SQL server does start with the
> certificate assigned.-- though I am sure that I am doing something
> stupid.
> Thanks for taking the time to respond. I have been working on this off
> and on for two weeks. I see others with the same problem, I try to be
> very carefull and implement the suggestions -- but still I get SSL
> error
>
> John Bell wrote:
>

Force Encryption on client with Thawte certificate

Hello
I think that I have read every paper on the Internet about SSL and SQL
2000 and have "pains takingly" tried to implement every suggestion.
1. I have a certificate from Thawte installed on a Windows 2000 server
that also has SQL 2000 installed.
2. The name of the certificate is a FQDN.
3. I can set Force Encryption on the Server side, restart the SQL
Server and it starts normally.
4. I use network monitor and can see network traffic encrypted between
client and server.
5. When I turn off Force Encryption with the "server utility", I
restart the SQL Server.
6. I turn on Force Encrytion on the client side.
7. I try to connect to the server with SQL Query and get an SSL Error.
8. There is only one certificate on the server.
9. I set the "friendly name" on the certificate to the FQDN.
10. I have viewed the certificate and I see no errors and the path
looks good.
11. I think that I have all the SPs installed.
I am assuming that the certificate is installed correctly because when
I set Force Encryption on the server, SQL Server starts with no
problem.
When I reset Force Encryption with the "server utility" -- restart the
SQL Server -- and set Force Encryption with the "client utility", I get
the "SSL error" when I try to log in with Query analyzer.
Because the SQL Instance and the client application are on the same
machine, and because I can see the Thawte Server CA under the Authority
tab, that the client trusts Thawte. Out of desperation, I even tried to
do an export and import using IE -- though I did not think that was
necessary because both client and server are on the same mchine.
This should not be this difficult
Any help is greatly appreciated.
ThanksHi
I can't say I have tried this but BOL states (second sentence):
"SSL encryption works only with instances of SQL Server 2000 running on a
computer that has been assigned a certificate from a public certification
authority. The computer on which the application is running must also have a
root CA certificate from the same authority"
John
"norrad" wrote:

> Hello
> I think that I have read every paper on the Internet about SSL and SQL
> 2000 and have "pains takingly" tried to implement every suggestion.
> 1. I have a certificate from Thawte installed on a Windows 2000 server
> that also has SQL 2000 installed.
> 2. The name of the certificate is a FQDN.
> 3. I can set Force Encryption on the Server side, restart the SQL
> Server and it starts normally.
> 4. I use network monitor and can see network traffic encrypted between
> client and server.
> 5. When I turn off Force Encryption with the "server utility", I
> restart the SQL Server.
> 6. I turn on Force Encrytion on the client side.
> 7. I try to connect to the server with SQL Query and get an SSL Error.
> 8. There is only one certificate on the server.
> 9. I set the "friendly name" on the certificate to the FQDN.
> 10. I have viewed the certificate and I see no errors and the path
> looks good.
> 11. I think that I have all the SPs installed.
> I am assuming that the certificate is installed correctly because when
> I set Force Encryption on the server, SQL Server starts with no
> problem.
> When I reset Force Encryption with the "server utility" -- restart the
> SQL Server -- and set Force Encryption with the "client utility", I get
> the "SSL error" when I try to log in with Query analyzer.
>
> Because the SQL Instance and the client application are on the same
> machine, and because I can see the Thawte Server CA under the Authority
> tab, that the client trusts Thawte. Out of desperation, I even tried to
> do an export and import using IE -- though I did not think that was
> necessary because both client and server are on the same mchine.
>
> This should not be this difficult
> Any help is greatly appreciated.
> Thanks
>|||Hello
Thanks
The Thawte Server CA is a trusted certification authority. It is
loaded by default with 2000 and because both SQL Server and Client are
on the same box, I should be ok and SQL server does start with the
certificate assigned.-- though I am sure that I am doing something
stupid.
Thanks for taking the time to respond. I have been working on this off
and on for two weeks. I see others with the same problem, I try to be
very carefull and implement the suggestions -- but still I get SSL
error
John Bell wrote:[vbcol=seagreen]
> Hi
> I can't say I have tried this but BOL states (second sentence):
> "SSL encryption works only with instances of SQL Server 2000 running on a
> computer that has been assigned a certificate from a public certification
> authority. The computer on which the application is running must also have
a
> root CA certificate from the same authority"
> John
> "norrad" wrote:
>|||Hi
I found these by searching the security news group
microsoft.public.sqlserver.security, the first one gives step by step detail
s
on how to enable SSL on a client, you may actually want to try this on a
stand alone client to make sure that nothing else is encrypted, doing it on
the server will force encryption of other things such as DTS packages run
through xp_cmdshell etc.. The second article also states "For the client to
request the SSL encryption, the client computer must trust the server
certificate and the certificate must already exist on the server" You may
want to post the exact error number and message you are getting.
276553 HOW TO: Enable SSL Encryption for SQL Server 2000 with Certificate
Server
http://support.microsoft.com/?id=276553
316898 HOW TO: Enable SSL Encryption for SQL Server 2000 with Microsoft
http://support.microsoft.com/?id=316898
319349 BUG: Turning On the 'Force Protocol Encryption' Option Is
Irreversible
http://support.microsoft.com/?id=319349
John
"norrad" wrote:

> Hello
> Thanks
> The Thawte Server CA is a trusted certification authority. It is
> loaded by default with 2000 and because both SQL Server and Client are
> on the same box, I should be ok and SQL server does start with the
> certificate assigned.-- though I am sure that I am doing something
> stupid.
> Thanks for taking the time to respond. I have been working on this off
> and on for two weeks. I see others with the same problem, I try to be
> very carefull and implement the suggestions -- but still I get SSL
> error
>
> John Bell wrote:
>

Force Encryption on client with Thawte certificate

Hello
I think that I have read every paper on the Internet about SSL and SQL
2000 and have "pains takingly" tried to implement every suggestion.
1. I have a certificate from Thawte installed on a Windows 2000 server
that also has SQL 2000 installed.
2. The name of the certificate is a FQDN.
3. I can set Force Encryption on the Server side, restart the SQL
Server and it starts normally.
4. I use network monitor and can see network traffic encrypted between
client and server.
5. When I turn off Force Encryption with the "server utility", I
restart the SQL Server.
6. I turn on Force Encrytion on the client side.
7. I try to connect to the server with SQL Query and get an SSL Error.
8. There is only one certificate on the server.
9. I set the "friendly name" on the certificate to the FQDN.
10. I have viewed the certificate and I see no errors and the path
looks good.
11. I think that I have all the SPs installed.
I am assuming that the certificate is installed correctly because when
I set Force Encryption on the server, SQL Server starts with no
problem.
When I reset Force Encryption with the "server utility" -- restart the
SQL Server -- and set Force Encryption with the "client utility", I get
the "SSL error" when I try to log in with Query analyzer.
Because the SQL Instance and the client application are on the same
machine, and because I can see the Thawte Server CA under the Authority
tab, that the client trusts Thawte. Out of desperation, I even tried to
do an export and import using IE -- though I did not think that was
necessary because both client and server are on the same mchine.
This should not be this difficult
Any help is greatly appreciated.
ThanksHi
I can't say I have tried this but BOL states (second sentence):
"SSL encryption works only with instances of SQL Server 2000 running on a
computer that has been assigned a certificate from a public certification
authority. The computer on which the application is running must also have a
root CA certificate from the same authority"
John
"norrad" wrote:
> Hello
> I think that I have read every paper on the Internet about SSL and SQL
> 2000 and have "pains takingly" tried to implement every suggestion.
> 1. I have a certificate from Thawte installed on a Windows 2000 server
> that also has SQL 2000 installed.
> 2. The name of the certificate is a FQDN.
> 3. I can set Force Encryption on the Server side, restart the SQL
> Server and it starts normally.
> 4. I use network monitor and can see network traffic encrypted between
> client and server.
> 5. When I turn off Force Encryption with the "server utility", I
> restart the SQL Server.
> 6. I turn on Force Encrytion on the client side.
> 7. I try to connect to the server with SQL Query and get an SSL Error.
> 8. There is only one certificate on the server.
> 9. I set the "friendly name" on the certificate to the FQDN.
> 10. I have viewed the certificate and I see no errors and the path
> looks good.
> 11. I think that I have all the SPs installed.
> I am assuming that the certificate is installed correctly because when
> I set Force Encryption on the server, SQL Server starts with no
> problem.
> When I reset Force Encryption with the "server utility" -- restart the
> SQL Server -- and set Force Encryption with the "client utility", I get
> the "SSL error" when I try to log in with Query analyzer.
>
> Because the SQL Instance and the client application are on the same
> machine, and because I can see the Thawte Server CA under the Authority
> tab, that the client trusts Thawte. Out of desperation, I even tried to
> do an export and import using IE -- though I did not think that was
> necessary because both client and server are on the same mchine.
>
> This should not be this difficult
> Any help is greatly appreciated.
> Thanks
>|||Hello
Thanks
The Thawte Server CA is a trusted certification authority. It is
loaded by default with 2000 and because both SQL Server and Client are
on the same box, I should be ok and SQL server does start with the
certificate assigned.-- though I am sure that I am doing something
stupid.
Thanks for taking the time to respond. I have been working on this off
and on for two weeks. I see others with the same problem, I try to be
very carefull and implement the suggestions -- but still I get SSL
error
John Bell wrote:
> Hi
> I can't say I have tried this but BOL states (second sentence):
> "SSL encryption works only with instances of SQL Server 2000 running on a
> computer that has been assigned a certificate from a public certification
> authority. The computer on which the application is running must also have a
> root CA certificate from the same authority"
> John
> "norrad" wrote:
> > Hello
> >
> > I think that I have read every paper on the Internet about SSL and SQL
> > 2000 and have "pains takingly" tried to implement every suggestion.
> >
> > 1. I have a certificate from Thawte installed on a Windows 2000 server
> > that also has SQL 2000 installed.
> > 2. The name of the certificate is a FQDN.
> > 3. I can set Force Encryption on the Server side, restart the SQL
> > Server and it starts normally.
> > 4. I use network monitor and can see network traffic encrypted between
> > client and server.
> > 5. When I turn off Force Encryption with the "server utility", I
> > restart the SQL Server.
> > 6. I turn on Force Encrytion on the client side.
> > 7. I try to connect to the server with SQL Query and get an SSL Error.
> > 8. There is only one certificate on the server.
> > 9. I set the "friendly name" on the certificate to the FQDN.
> > 10. I have viewed the certificate and I see no errors and the path
> > looks good.
> > 11. I think that I have all the SPs installed.
> >
> > I am assuming that the certificate is installed correctly because when
> > I set Force Encryption on the server, SQL Server starts with no
> > problem.
> >
> > When I reset Force Encryption with the "server utility" -- restart the
> > SQL Server -- and set Force Encryption with the "client utility", I get
> > the "SSL error" when I try to log in with Query analyzer.
> >
> >
> > Because the SQL Instance and the client application are on the same
> > machine, and because I can see the Thawte Server CA under the Authority
> > tab, that the client trusts Thawte. Out of desperation, I even tried to
> > do an export and import using IE -- though I did not think that was
> > necessary because both client and server are on the same mchine.
> >
> >
> >
> > This should not be this difficult
> >
> > Any help is greatly appreciated.
> >
> > Thanks
> >
> >|||Hi
I found these by searching the security news group
microsoft.public.sqlserver.security, the first one gives step by step details
on how to enable SSL on a client, you may actually want to try this on a
stand alone client to make sure that nothing else is encrypted, doing it on
the server will force encryption of other things such as DTS packages run
through xp_cmdshell etc.. The second article also states "For the client to
request the SSL encryption, the client computer must trust the server
certificate and the certificate must already exist on the server" You may
want to post the exact error number and message you are getting.
276553 HOW TO: Enable SSL Encryption for SQL Server 2000 with Certificate
Server
http://support.microsoft.com/?id=276553
316898 HOW TO: Enable SSL Encryption for SQL Server 2000 with Microsoft
http://support.microsoft.com/?id=316898
319349 BUG: Turning On the 'Force Protocol Encryption' Option Is
Irreversible
http://support.microsoft.com/?id=319349
John
"norrad" wrote:
> Hello
> Thanks
> The Thawte Server CA is a trusted certification authority. It is
> loaded by default with 2000 and because both SQL Server and Client are
> on the same box, I should be ok and SQL server does start with the
> certificate assigned.-- though I am sure that I am doing something
> stupid.
> Thanks for taking the time to respond. I have been working on this off
> and on for two weeks. I see others with the same problem, I try to be
> very carefull and implement the suggestions -- but still I get SSL
> error
>
> John Bell wrote:
> > Hi
> >
> > I can't say I have tried this but BOL states (second sentence):
> >
> > "SSL encryption works only with instances of SQL Server 2000 running on a
> > computer that has been assigned a certificate from a public certification
> > authority. The computer on which the application is running must also have a
> > root CA certificate from the same authority"
> >
> > John
> >
> > "norrad" wrote:
> >
> > > Hello
> > >
> > > I think that I have read every paper on the Internet about SSL and SQL
> > > 2000 and have "pains takingly" tried to implement every suggestion.
> > >
> > > 1. I have a certificate from Thawte installed on a Windows 2000 server
> > > that also has SQL 2000 installed.
> > > 2. The name of the certificate is a FQDN.
> > > 3. I can set Force Encryption on the Server side, restart the SQL
> > > Server and it starts normally.
> > > 4. I use network monitor and can see network traffic encrypted between
> > > client and server.
> > > 5. When I turn off Force Encryption with the "server utility", I
> > > restart the SQL Server.
> > > 6. I turn on Force Encrytion on the client side.
> > > 7. I try to connect to the server with SQL Query and get an SSL Error.
> > > 8. There is only one certificate on the server.
> > > 9. I set the "friendly name" on the certificate to the FQDN.
> > > 10. I have viewed the certificate and I see no errors and the path
> > > looks good.
> > > 11. I think that I have all the SPs installed.
> > >
> > > I am assuming that the certificate is installed correctly because when
> > > I set Force Encryption on the server, SQL Server starts with no
> > > problem.
> > >
> > > When I reset Force Encryption with the "server utility" -- restart the
> > > SQL Server -- and set Force Encryption with the "client utility", I get
> > > the "SSL error" when I try to log in with Query analyzer.
> > >
> > >
> > > Because the SQL Instance and the client application are on the same
> > > machine, and because I can see the Thawte Server CA under the Authority
> > > tab, that the client trusts Thawte. Out of desperation, I even tried to
> > > do an export and import using IE -- though I did not think that was
> > > necessary because both client and server are on the same mchine.
> > >
> > >
> > >
> > > This should not be this difficult
> > >
> > > Any help is greatly appreciated.
> > >
> > > Thanks
> > >
> > >
>