如何在Windows CE中绕过SSL证书错误

Mto*_*tok 2 .net c# windows-ce

我想绕过Windows CE中Web服务的SSL证书错误.

.net Windows应用程序有很多解决方案,例如;

在.Net中调用Web服务时,绕过无效的SSL证书错误

但在Windows中我无法导入ServicePointManager库.

那么在Windows CE中还有另一种方法吗?

Szi*_*zsi 5

实际上,您也可以在CF中使用ServicePointManager.首先,创建一个接受所有内容的策略,如下所示:

public class TrustAllCertificatePolicy : ICertificatePolicy
{
    public TrustAllCertificatePolicy()
    {
    }

    public bool CheckValidationResult(ServicePoint sp,
        X509Certificate cert, WebRequest req, int problem)
    {
        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

要使用此类,您应该在每个应用程序会话中运行以下代码(每次启动应用程序;每次建立SSL连接时都将使用TrustAllCertificatePolicy实例),并在您发出任何Web请求之前(最好在应用程序启动时) ).

System.Net.ServicePointManager.CertificatePolicy = new TrustAllCertificatePolicy();
Run Code Online (Sandbox Code Playgroud)

此解决方案相当于对通常出现在浏览器中的任何安全消息回答"是".

更多信息在这里