无法创建SSL/TLS安全通道 - 问题可能是代理服务器吗?

JL.*_*JL. 14 c# web-services certificate

我有一个ac#app,它调用一个使用证书进行身份验证的Web服务方法.代码有效,因为当它安装在服务器A(没有代理)时,它会进行身份验证.

当我在服务器B上安装代码时,在客户端站点上,它安装在代理服务器后面.我真的尝试了几乎所有的东西,但我一直收到这个错误:

无法创建SSL/TLS安全通道

您是否认为此问题可能是由代理服务器引起的?如果您有任何亲身经历,请分享.

谢谢

Bry*_*ner 16

根据我的经验,几乎所有这些消息都是由于链中的某些机器(客户端,代理,服务器)由于某种原因而不"喜欢"证书.

要详细说明twk所说的内容,如果您使用自签名证书或您自己的CA,则需要至少在服务器上的受信任机构存储中安装签名证书,并且可能在代理上.

我遇到的常见问题:

  • 服务器上的证书未由PROXY或CLIENT信任的权限签名
  • CLIENT上的证书未由PROXY或SERVER信任的权限签名
  • 糟糕,我在创建要在客户端上安装的证书时忘记导出私钥
  • 我的进程对客户端上的私钥没有读取权限
  • 客户端证书受密码保护,并且在读取证书时未指定凭据.


Sna*_*yte 10

我遇到了同样的问题.在我的情况下,证书需要网络服务访问权限.你可以查看

  1. 打开证书MMC
  2. 导航到证书(本地计算机)>个人>证书
  3. 右键单击您的证书,然后从上下文菜单中选择"所有任务">"管理私钥..."
  4. 设置适当的权限

  • 是的!我有同样的问题,这为我解决了。谢谢你,谢谢你,谢谢你! (2认同)

twk*_*twk 5

如果您的证书不受信任(自签名),则C#客户端将拒绝连接.