我正在开发一个客户端-服务器应用程序,其中服务器是基于SSL客户端证书执行客户端身份验证的web服务。客户端证书由根CA ->中间介质-CA-1 ->中间介质-CA-2颁发。我将证书导入到用户证书存储区和证书机器存储区。
使用WinHttpSetOption(request,WINHTTP_OPTION_CLIENT_CERT_CONTEXT,(LPVOID)pCertCtx,sizeof(*pCertCtx))设置客户端证书。
从用户存储区搜索pCertCtx时,WinHttp将同时发送客户端证书和中间CA。
但是,当从本地机器存储或内存证书存储中搜索pCertCtx时,WinHttp仅发送客户端证书,而不发送中间CA。
为什么WinHttp在这些问题上有不同的行为?是否有强制WinHttp始终同时发送证书和链的选项?
发布于 2020-10-15 06:59:29
已通过将中间介质ca添加到计算机存储区解决。
https://stackoverflow.com/questions/64253238
复制相似问题