我想访问的某个 SOAP 网络服务器配置为“接受客户端证书”,但不需要它们!
当我直接在 Internet Explorer 中输入 URL 时,它会弹出一个客户端证书(我没有)。当我取消此对话框时,会弹出第二个对话框,输入用户名和密码。这适用于我的用户名和密码。
我正在尝试在使用 ServerXMLHTTP 的脚本中做同样的事情
var objXMLHTTP = new ActiveXObject("MSXML2.ServerXMLHTTP.6.0") // or 4.0
objXMLHTTP.open("POST",
"https://www.example.com",
false,
"username",
"password");
objXMLHTTP.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
// objXMLHTTP.setOption(2) = 13056; // This does not help
objXMLHTTP.send(XMLReq); // This fails
错误消息是msxml6.dll: An unknown error occurred while processing the certificate.
或msxml6.dll: A connection with the server could not be established
如何让 ServerXMLHTTP 忽略客户端证书的可选(!)请求并继续进行基本身份验证?或者我可以使用什么其他组件?
笔记:
- 我无法更改网络服务器上的设置或获取客户端证书。
- 我也试过 WinHTTP.WINHTTPRequest.5.1 但这没有帮助。
- 请记住:这个问题是关于客户端证书的。
objXMLHTTP.setOption(2) = 13056
只会忽略服务器证书错误。