使用.NET中的证书验证SQL连接

时间:2010-06-08 14:44:12

标签: asp.net sql-server

我注意到SQL Server 2005/2008可能使用证书对复制帐户进行身份验证。是否可以在同一庄园中验证.NET SqlConnection?

理想情况下,我想完全取消密码身份验证,并让aspnet用户使用针对其帐户存储的证书进行连接。

这是可能的,如果是这样,怎么办呢?

2 个答案:

答案 0 :(得分:4)

验证TDS协议连接(即用户连接)的唯一方法是使用Windows身份验证(NTLM / Kerberos)或SQL身份验证(用户/密码)。无法使用证书对TDS连接进行身份验证。只有数据库镜像和Service Broker连接才能authenticate using certificate s。

您可能注意到的是Web Based Replication中发生的IIS与客户端之间的HTTPS身份验证。这确实是基于证书的身份验证,但是在客户端和IIS之间发生,并且SQL Server不涉及任何方式。

答案 1 :(得分:-1)

您可以将ASP.NET配置为使用客户端证书,请参阅此KB article

但ASP.NET服务器无权访问您的客户端证书。因此,ASP.NET服务器无法使用证书对SQL Server进行身份验证。