我有一个第三方的自签名证书(.cer)文件,希望在代码中使用该证书连接到他们的Web服务(通过HTTPS),而不必在Windows的证书存储中安装它。具体来说,这样其他团队成员就不需要在本地安装此证书才能进行连接工作。
是否可以在代码中实现这一点?它可以使用传统的webservice-client代码(使用wsdl.exe或VS的Add Web Reference)或WCF客户端代码(使用svcutil.exe或VS的Add Service Reference) - 我们还没有确定要采用哪种方式。
我已经尝试过:
在app.config中使用WCF客户端技术的终结点。
谢谢。
是否可以在代码中实现这一点?它可以使用传统的webservice-client代码(使用wsdl.exe或VS的Add Web Reference)或WCF客户端代码(使用svcutil.exe或VS的Add Service Reference) - 我们还没有确定要采用哪种方式。
我已经尝试过:
proxy.ClientCertificates.Add(X509Certificate.CreateFromCertFile(@"d:\temp\mycert.cer"));
对于老式的webservice代码,没有运气 - 它仍然失败并显示无法建立SSL/TLS安全通道的信任关系。
直到我实际上将证书安装在证书存储中。同样适用于:
<identity>
<certificate encodedValue="the base64 encoded contents of the file" />
</identity>
在app.config中使用WCF客户端技术的终结点。
谢谢。