如何验证服务器上的客户端证书?

时间:2013-02-08 08:35:31

标签: c# asp.net .net certificate

我必须实现由预定义的第三方调用的Web服务。文档说

  

您有责任验证来电者的证书指纹。仅接受来自具有正确公钥的证书的呼叫。

并且有一个带有证书公钥的.cer文件。

现在在HttpRequest类中,ClientCertificate属性可能包含一个HttpClientCertificate对象,而该对象又具有PublicKey类型的byte[]属性。

假设我已经加载了.cer文件并获得了另一个也可以访问公钥的证书对象。

如何根据我加载的证书验证请求中的证书?我只是比较两个公钥byte[]数组还是做其他事情?

1 个答案:

答案 0 :(得分:0)

如果在计算机的证书存储中导入证书,则.NET Framework(WCF,HttpClient等)将自动验证HTTPs端点的任何使用。

如果它是由受信任的CA颁发的,那就更好了,因为您甚至不需要导入证书。

您无需手动验证。