C# 客户端证书似乎未被发送

C# 客户端证书似乎未被发送,c#,.net,iis,ssl,client-certificates,C#,.net,Iis,Ssl,Client Certificates,我正在与一个客户集成,我正在为该客户实现双向ssl,这意味着我将向传出的HTTP请求附加一个客户端证书 我的呼叫客户端应用程序是用C编写的,托管在IIS中,虽然客户没有使用IIS,但我认为他们使用的是所谓的第7层 我在代码中将客户端证书添加到请求中: request.ClientCertificates.Add(clientCertificate); 现在,如果我使用客户机证书向客户发送HTTP请求,则请求失败,客户机证书不会添加到请求中 但是,如果在调用对客户的请求之前,我正在调用对我在II

我正在与一个客户集成,我正在为该客户实现双向ssl,这意味着我将向传出的HTTP请求附加一个客户端证书

我的呼叫客户端应用程序是用C编写的,托管在IIS中,虽然客户没有使用IIS,但我认为他们使用的是所谓的第7层

我在代码中将客户端证书添加到请求中:

request.ClientCertificates.Add(clientCertificate);
现在,如果我使用客户机证书向客户发送HTTP请求,则请求失败,客户机证书不会添加到请求中

但是,如果在调用对客户的请求之前,我正在调用对我在IIS中创建和托管的虚拟应用程序的请求,该应用程序需要SSL和客户端证书,然后调用对客户端的请求,那么它就通过了


看起来对IIS托管的虚拟应用程序的请求触发了什么,但我不知道是什么!为什么会这样?这是微软的错误吗

客户端证书未添加到请求中-如何确定?如何执行双重请求,是否重用请求对象?你能展示更多的相关代码吗?这是微软的错误吗不要让这成为你的第一个怀疑,先怀疑你自己的代码。我确信,因为我调试了我的代码并捕获了wireshark数据包,确保了客户端证书不存在于双重请求中,所以我没有使用相同的对象,新的httpWebRequest对象。你解决了这个问题吗?我遇到了一个非常类似的问题,Wireshark显示证书不是专门发送给证书验证部分的,我想这就是我遇到的证书签名人。我已经阅读和研究Wireshark好几天了。NET未通过TLS 1.2提交证书。我们认为这可能是客户端证书的信任链问题,但我们设法找到并安装了根CA。客户端证书是合法的,但仍然没有运气。