我在尝试做一个SSL呼使用 HTTPWebRequest 和它的不断失败是说这不可能建立信任。我已经增加了一个回来 ServicePointManager.ServerCertificateValidationCallback 和返回 true 总是有效。然而,我想事情要多一点安全。看 SslPolicyErrors 在验证的方法看来,我得到一个 RemoteCertificateNameMismatch 错误。什么是不匹配的正确导致这样的错误?

(编辑:看到的评论意见的答复) 该网站,我访问使用HTTPBasic SSL和一个网址喜欢的东西v1.api.serviceprovider.com与颁发的证书*。serviceprovider.com.

有帮助吗?

解决方案

一般的证书问题:

  • 证书没有签发的由可信任的证书提供者(必须在你们的信任链)
  • 证书过期的

这一特定错误的通常意味着证书的未发表的网站,你被击中。实例:

  • 差"www.yoursite.com"和"yoursite.com"(他们是不同的;一些大名获得这是错误的,这真的让我很烦...)
  • 访问作为一个IP地址,而不是姓名的证书;或v/v
  • 负载平衡器向你"1,yoursite.com"但是给你的证书从"yoursite.com"
  • 一个负载均衡悄悄地通过你向"1",这是颁发证书为"1",而不是网站
  • (编辑见的评论)通配符的证书颁发的多层次的--即发布*。somesite.org当你打foo.bar.somesite.org

这些大多数易于识别的通过导航网站和阅读的警告,浏览器给你,以及检查证书,进行了印发。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top