NodeJS SSL验证不正确

时间:2017-10-08 21:19:33

标签: javascript node.js ssl https

我正在尝试使用节点检查外部域的SSL状态。使用google.com进行测试时效果很好。但是,当我尝试使用我知道的无效SSL证书(在这种情况下已撤销)的网址时,res.socket.authorized的值仍为true

我使用此错误还是有更好的方法来验证域名SSL证书的状态?

const https = require('https');

const options = {
  host: 'revoked.badssl.com',
  method: 'get',
  path: '/'
};

const req = https.request(options, res => {
  console.log('Certificate Status: ', res.socket.authorized);
});

req.on('error', error => {
  console.error('Error: ', error);
});

req.end();

1 个答案:

答案 0 :(得分:0)

因此,结果证明这是一个专门针对已撤销的SSL证书的问题。

证书的撤销不会在所有证书颁发机构中传播。每个CA都发布一个证书吊销列表(CRL),其中仅包含此特定CA颁发的已吊销证书的列表。

有关解决此问题的详细信息,请访问:How does certificate revocation work with intermediate CA's?