我正在尝试检查具有节点的外部域的SSL状态。使用google.com
进行测试可以正常工作。但是,当我尝试知道无效的SSL证书(在这种情况下已撤销)的url时,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();
最佳答案
因此,事实证明这尤其是与撤销SSL证书有关的问题。
证书吊销不会在所有证书颁发机构之间传播。每个CA都会发布一个证书吊销列表(CRL),其中仅包含由该特定CA颁发的吊销证书的列表。
有关解决此问题的更多详细信息,请参见:How does certificate revocation work with intermediate CA's?