【发布时间】:2011-12-20 12:29:40
【问题描述】:
我正在尝试编写一个使用 Web 服务的 C# 客户端。通信是加密的。我已将站点的证书下载并安装到 WinXP 保存它们的神奇位置。
当我运行我的客户端时,我失败了“根据验证过程,远程证书无效。”
当我运行 certmgr.msc 时,GUI 通知我证书的策略无效。证书有有效日期,认证路径没问题。该证书确实有一个证书策略,其策略标识与点交错的整数(如 1.2.30...)
使用 X509Certificate2.Verify Method documentation 中的代码,我可以看到验证消息确实返回 false。
在尝试研究此错误时,我在Brian Komar's Windows Server 2008 PKI and Certificate Security 中找到了参考:
策略验证。如果调用证书链接引擎的应用程序需要证书中的特定应用程序策略或证书 OID,并且所需的策略或 OID 不包含在 CA 链中的证书中,证书链接引擎认为证书无效。
我没有看到我对特定的应用程序策略有任何期望。我正在将此 WSE3 代码移植到 WCF,所以它可能是内置的。
关于如何进一步降低它的任何建议?证书真的有问题吗?
如果证书没问题,是否需要配置或扩展 CryptoConfig 类以关闭检查策略?
任何和所有帮助表示赞赏。
【问题讨论】:
标签: c# certificate x509