ICA(中级)-> Web API 服务器。 RCA、ICA 和 Web -6ren">
gpt4 book ai didi

c# - "The remote certificate is invalid according to the validation procedure"使用 HttpClient

转载 作者:太空狗 更新时间:2023-10-29 19:40:48 25 4
gpt4 key购买 nike

无法解决证书验证的问题。

Web API 服务器使用 HTTPS 来处理请求。服务器的证书具有以下证书路径:RCA(根)-> ICA(中级)-> Web API 服务器。 RCA、ICA 和 Web API 服务器是同一 Active Directory 域的成员。

客户端应用(桌面,电脑加入同一个域)使用HttpClient与服务器通信,支持两种场景:

  • 连接到公司网络;
  • 已与公司网络断开连接(互联网访问)。

两种场景都使用基本身份验证。
RCA 和 ICA 证书分别放置在本地计算机帐户的“受信任的根证书颁发机构”和“中间证书颁发机构”中。 RCA 证书是自签名的。

现在,当客户端连接到企业网络时,证书验证会按预期进行,用户可以与 Web API 进行“对话”。

当客户端断开连接时(只有 Internet 连接可用),证书验证失败并返回 AuthenticationException(“根据验证程序,远程证书无效”)。

我不想完全关闭证书验证,但只需要一种方法来告诉验证系统这个特定证书是有效的。此外,客户端应用程序使用 SignalR,默认情况下它使用自己的传输。因此,thisthis不是选项。

为什么将 RCA 和 ICA 证书放入“受信任...”和“中间...”文件夹没有帮助?

有什么解决方法吗?

最佳答案

您遇到的问题是因为证书提供的主题 CN 与 Uri 中的主机名不匹配。

确保绑定(bind)到主机公共(public) IP 地址的证书确实具有与您用于访问资源的主机名相匹配的 CN。

要轻松验证,请在浏览器中打开 Url 并查看证书。Issued to 字段应包含 FQDN 并与 Uri 中的主机名部分相匹配。在您的情况下,它不会。

关于c# - "The remote certificate is invalid according to the validation procedure"使用 HttpClient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34354401/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com