WinHttp从证书获取主题替代名称?

时间:2019-01-31 12:48:35

标签: c++ tls1.2 winhttp subject-alternative-name

我正在一个项目中,客户提供了一份证书,该证书具有主题替代名称以及可以连接的所有可能的IP和DNS名称。

我们代码中HTTPS的当前实现使用winHttp API来获取正确的证书。

我们正在使用以下API:

CertFindCertificateInStore

证书具有以下内容:

主题-> CN设置为*.abc.com,我们正尝试从应用程序连接到uat.abc.com

打开安全连接时,出现以下错误:

WINHTTP_CALLBACK_STATUS_FLAG_CERT_CN_INVALID - SSL certificate common name (host name field) is incorrect, for example, if you entered www.microsoft.com and the common name on the certificate says www.msn.com.

因此,在搜索winhttp之后,我发现Subject-> CN名称与主机名不匹配。但是证书具有通配符,因此应该匹配。

此后,我们获得了第二个证书,该证书的“主题备用名称”(扩展证书)填充了IP和DNS名称。 使用此证书进行测试时,我们仍然会收到与上述相同的错误。

有人知道如何通过winhttp API访问使用者替代名称吗?

谢谢。

0 个答案:

没有答案