我们的Windows CE 5.0应用程序存在我们的通配符SSL证书(* .domain.com)的问题 - 它不会将其视为有效。
据我所知,Windows Mobile 6.0支持通配符证书(早期版本没有),并且建立在WinCE 5上,这表明应该可以将WinCE 5更改为接受通配符证书(编辑 - 显然这表明我有限了解环境并不是一个有效的假设!)。
有谁能建议我们如何解决这个问题?这种变化需要是程序化的,以便我们可以将其推广到数百个现有客户。
帮助!
答案 0 :(得分:2)
这将接受所有证书,并根据需要进行修改。
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;
}
}
答案 1 :(得分:0)
为什么WinMo支持他们的事实表明CE 5.0会?您需要了解CE是一个模块化操作系统,平台OEM编写的平台很大一部分。 WinMo的平台OEM是WinMo团队。 WinMo团队可能自己编写了支持并将其添加到他们的平台,就像WinMo中所有在vanilla CE中不存在的UI元素一样。
从历史上看,Microsoft倾向于将至少某些功能从WinMo平台转移到之后的CE版本中(例如aygshell,它出现在PPC中(基于CE 3.0和4.2)并且仅在之后他们开发了它,它包含在通用CE(5.0)中。
值得研究一下,看看CE 6.0是否支持通配符证书,如果是这样,那么就要考虑迁移你的平台BSP。如果它不存在,则需要您编写(或购买)支持并自行将其添加到您的平台。