c# - CRL 无法通过 http 代理工作

标签 c# wcf ssl https certificate

这是我的情况。

client -> http proxy -> remote web server

LDAP 端口和 HTTP 端口在客户端的防火墙上被阻止。

发送请求时,客户端必须检查远程 Web 服务器证书的 CRL 以验证其来源。

我们确实设置了 ServicePointManager.CheckCertificateRevocationList = true; 来做到这一点,它在没有代理的设置中工作正常。使用代理,我们得到以下错误:

Could not establish trust relationship for the SSL/TLS secure channel.

服务器 CRL 文件可通过 IE 在相同的设置中访问。

我环顾四周,但一无所获。

最佳答案

基本上,我通过实验找到了答案。

如果您希望您的 CRL 通过代理工作:

  1. 您可能希望为您的应用程序所进行的连接设置代理(我们已经设置好了,所以这不是真正的问题)。
  2. 您需要设置 netsh winhttp 代理,指向您的代理(在 netsh winhttp 控制台中使用 set proxy myproxy:proxyport)

关于c# - CRL 无法通过 http 代理工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32783407/

相关文章:

c# - 是否可以缩短 XDocument 的 XDeclaration?

c# - 如何将 Fluent MEF 注入(inject) WCF

c# - 使用带有 WCF SOAP 的 XmlSerializer 添加根 xmlns

c# - DataContract 运行时错误 - 类型 'myType' 无法序列化。我做错了什么?

email - 发送电子邮件时出现 Postfix 错误 - 554 5.7.1 - 中继访问被拒绝

c# - NSubstitute 模拟 Mongo IFindFluent 不起作用

c# - 用于检查源设备 ID 的低级键盘 Hook

ios - 使用 AFNetwork 在 iOS 应用程序中更新 SSL 证书后的 NSURLErrorDomain

c# - 护照号码的正则表达式

javascript - 为什么 https.Agent 在通过 node-http-proxy 代理时抛出解析错误?