我正试图用C#客户端连接到Java web服务。我没有物理访问该服务的权限,但它的开发人员告诉我,我需要在请求中提供客户端证书和中间CA。
我尝试使用服务引用和WebClient,但我只发送了客户端证书。
protected override WebRequest GetWebRequest(Uri address)
{
HttpWebRequest request = (HttpWebRequest)base.GetWebRequest(address);
request.ClientCertificates.Add(m_TransportCertificate);
//m_TransportCertificate holds client certificate with key and rest of the cert chain (intermediate and root)
return request;
}
如何在C#中发送两个客户端证书?
据我所知,这是不正常的行为-客户端应该只发送一个证书。
我无法让我的应用程序做到这一点-它总是发送一个证书。
Wireshark screenshot
然而,它在SoapUI中工作(第二个是中间CA)
Wireshark screenshot