我有一个WCF Web服务,设置为使用基于消息的安全性。该服务使用通配符证书来保护邮件:* .domain.com
更新SSL证书后,该服务现在会抛出以下错误:
“传出邮件的身份检查失败。远程端点的预期DNS身份是'* .domain.com',但远程端点提供了DNS声明'domain.com'....”
如何修复此问题,以便服务仍以* .domain.com作为DNS声明进行响应?
不幸的是,更新客户端配置并不是通过DNS身份属性使用新DNS声明的唯一选择。
谢谢, 标记
答案 0 :(得分:5)
这是WCF中的一个错误。如果阻塞问题,请访问连接站点并进行upvote。 http://connect.microsoft.com/wcf/feedback/details/683178/wcf-x509-certificate-validation-only-checks-last-dnsname-in-subject-alternative-name
答案 1 :(得分:0)
原来问题在于Wild Card Cert上的SANs列表。列出域名的顺序是:
*.domain.com
domain.com
WCF基本上总是解析为SANs列表中的最后一项。我偶然发现了Office Communicator遇到类似问题的一些文章。我不确定这是否是WCF错误。
我的解决方案是要求证书颁发机构为我生成一个没有SANs属性的通配符证书。
答案 2 :(得分:0)
客户端的DNS设置仅用于验证证书的真实性,因此您只需将客户端的DNS设置为“domain.com”而不是“service.domain.com”。