来自Windows的Node.js客户端证书...如何判断是否正在发送证书?

时间:2015-07-07 23:36:52

标签: node.js ssl client-certificates

我有一个客户端证书安全休息端点,当我通过curl使用Linux-land中的已知证书来命中它时...也就是说,如果我是console.log(req.connection.getPeerCertificate) ()),我看到了一堆东西。凉。

...但是,当我的一个队友试图从Windows机器点击相同的端点时,req.connection.getPeerCertificate()是一个空对象,即使他们认为他们正确地附加了证书。

确定他们是否确实正确附加证书的最佳方式是什么?我该如何调试呢?

1 个答案:

答案 0 :(得分:1)

docs say

  

如果对等方未提供证书,[getPeerCertificate]将返回null或空对象。

因此,您已经知道Windows客户端未发送有效证书,因为getPeerCertificate()返回空对象。检查authorizationError属性以获取有关可能发生的任何客户端证书错误的其他信息。

通过找出客户端未发送证书的原因来调试此问题。您是否在server options设置了requestCert: true?客户端是否正确配置?它是否发送了可以验证的证书?