node.js - 我怎么知道从我的 node.js 接收 TLS 请求的 HTTPS 端点正在使用指定的 SSL 证书?

标签 node.js ssl

我有一个端点(使用任何语言,比方说 Python),它使用任何广为人知且受信任的 CA 颁发的证书将某些服务公开为 HTTPS,即 可能包含在世界上几乎所有浏览器中。

最简单的部分是,我可以使用 Node.js 针对此端点发出 TLS 请求,而不会出现其他问题。

出于安全原因,我想检查每次我的 Node.js 针对此 HTTPS 端点发出 TLS 请求时,我想确保所使用的证书是我信任的证书,并且应我公司要求。

实现该目标的最佳方法是什么?

最佳答案

这听起来像是 How to get SSL certificate information using node.js? 的答案将适合您的需求。

您可以使用以下代码获取端点的证书,然后根据您的预期检查其指纹或哈希值。

var https = require('https');
var options = {
    host: 'google.com',
    port: 443,
    method: 'GET'
};

var req = https.request(options, function(res) {
    console.log(res.connection.getPeerCertificate());
});

req.end();

关于node.js - 我怎么知道从我的 node.js 接收 TLS 请求的 HTTPS 端点正在使用指定的 SSL 证书?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31553294/

相关文章:

javascript - 如何从 Node.js 中的 base64 字符串发送表单数据中的文件?

javascript - node.js 13 - 导入无法正常工作

Java - PKIX 路径构建失败 : unable to find valid certification path to requested target

python - 如何在python中设置本地DNS服务器

php - 使用 PHP 仅在某些页面上强制使用 SSL

c# - 让 IE6、7、8 通过 ssl 从我们的站点可靠地下载 office 文档

ssl - IBM MQIPT SSL 握手问题

node.js - 将 session 存储在磁盘上

javascript - node.js csurf 无效的 csrf token

javascript - 找不到已删除的图像