向 wcf 服务发出 https 请求:根据验证程序,远程证书无效

Posted

技术标签:

【中文标题】向 wcf 服务发出 https 请求:根据验证程序,远程证书无效【英文标题】:make https request to wcf service: The remote certificate is invalid according to the validation procedure 【发布时间】:2014-10-18 13:56:05 【问题描述】:

我在本地机器上通过 http/https 托管了一项服务。当我通过 http 使用服务时,它可以完美运行。当我在 ajax 上发出 https 请求时,它也可以工作。但它不起作用,当我尝试从客户端应用程序后面的代码中使用它时。它显示如下错误消息:

"The remote certificate is invalid according to the validation procedure"

有人可以帮帮我吗?

【问题讨论】:

可能重复:***.com/questions/777607/… 【参考方案1】:

这是因为,您在本地 IIS 上使用的证书是虚拟证书。 可能,您不会实时获得它。 有几个技巧可以让它在本地工作。

注意:永远不要在生产环境中这样做...

在调用任何服务方法之前添加以下代码段(一个事件处理程序)。

 ServicePointManager.ServerCertificateValidationCallback +=
        EasyCertCheck;

 bool EasyCertCheck(object sender, X509Certificate cert,
   X509Chain chain, System.Net.Security.SslPolicyErrors error)
    
        return true;
    

【讨论】:

以上是关于向 wcf 服务发出 https 请求:根据验证程序,远程证书无效的主要内容,如果未能解决你的问题,请参考以下文章

WCF 和身份验证

在事务中从 WCF 服务向 REST API 发出 Post 请求

使用外部 WCF 服务时,在 docker 内运行的 Dotnet 核心 Web api 无法进行身份验证

防止对我的 wcf 服务的跨域请求

通过 HTTPS 上的客户端证书对 WCF 请求进行身份验证

无法向本地服务器发出 HTTPS 请求