无法通过证书验证解决问题。
存在 Web API 服务器,使用 HTTPS 处理请求。服务器的证书具有此认证路径:RCA(根)-> ICA(中间)-> Web API 服务器。 RCA、ICA 和 Web API 服务器都是同一 Active Directory 域的成员。
客户端应用程序(桌面计算机加入了相同的域),使用 HttpClient
与服务器通信,并支持两种情况:
- 连接到公司网络;
- 断开公司网络连接(访问互联网)。
这两种情况均使用基本身份验证。
RCA 和 ICA 证书分别放置在本地计算机帐户的“受信任的根证书颁发机构”和“中间证书颁发机构”中。 RCA 证书为自签名证书。
现在,当客户端连接到公司网络时,证书验证按预期工作,用户可以“交谈”Web API。
当客户端断开连接(仅可用互联网连接)时,证书验证失败并出现AuthenticationException
( “根据验证过程,远程证书无效”)。
我不想完全关闭证书验证,但只需要一种方法来告诉验证系统,该特定证书有效。 此外,客户端应用程序使用 SignalR,默认使用其自己的传输。因此,this 和 this 不是选项。
为什么将 RCA 和 ICA 证书放置在“受信任...”和“中间...”文件夹中没有帮助?
是否有任何解决方法?