我们的 Windows CE 5.0 应用程序的通配符 SSL 证书 (*.domain.com) 存在问题 - 它不会接受它为有效的。
我了解 Windows Mobile 6.0 支持通配符证书(早期版本不支持),并且基于 WinCE 5 构建,这表明应该可以将 WinCE 5 更改为接受通配符证书(编辑 - 显然这表明我对环境,不是一个有效的假设!)。
任何人都可以建议我们如何去做吗?更改需要程序化,以便我们可以将其推广到数百个现有客户。
帮助!
我们的 Windows CE 5.0 应用程序的通配符 SSL 证书 (*.domain.com) 存在问题 - 它不会接受它为有效的。
我了解 Windows Mobile 6.0 支持通配符证书(早期版本不支持),并且基于 WinCE 5 构建,这表明应该可以将 WinCE 5 更改为接受通配符证书(编辑 - 显然这表明我对环境,不是一个有效的假设!)。
任何人都可以建议我们如何去做吗?更改需要程序化,以便我们可以将其推广到数百个现有客户。
帮助!
这将接受所有证书,根据需要进行修改。
System.Net.ServicePointManager.CertificatePolicy = new TrustAllCertificatePolicy();
public class TrustAllCertificatePolicy : System.Net.ICertificatePolicy
{
public TrustAllCertificatePolicy()
{ }
public bool CheckValidationResult(ServicePoint sp, System.Security.Cryptography.X509Certificates.X509Certificate cert, WebRequest req, int problem)
{
return true;
}
}
为什么 WinMo 支持它们的事实表明 CE 5.0 会支持它们?您需要了解 CE 是一个模块化操作系统,平台的很大一部分是由平台 OEM 编写的。WinMo 的平台 OEM 是 WinMo 团队。WinMo 团队可能自己编写了支持并将其添加到他们的平台,就像 WinMo 中的所有 UI 元素在 vanilla CE 中不存在一样。
从历史上看,微软倾向于将 WinMo 平台中的至少一些特性引入之后的 CE 版本中(例如,出现在 PPC 中的 aygshell(基于 CE 3.0 和 4.2),并且只有在他们开发之后才将其包含在通用 CE 中( 5.0)。
值得调查一下 CE 6.0 是否支持通配符证书,如果支持,请考虑迁移您的平台 BSP。如果不存在,则需要您编写(或购买)支持并将其添加到您的平台。