首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >跨平台(包括Windows)在nodejs中使用操作系统信任证书的方式

跨平台(包括Windows)在nodejs中使用操作系统信任证书的方式
EN

Stack Overflow用户
提问于 2016-03-30 22:21:53
回答 1查看 237关注 0票数 4

是否有可用的节点模块或可以跨平台方式从操作系统读取可信证书的代码?其他答案包括如何使用ubuntus,我可以将其改编为适用于Windows,但我还没有找到任何可以轻松读取MacOS信任证书的代码。其他问题指出了它们在registry中的位置,我应该使用CryptoAPI来加载它们,但我还没有找到从节点执行此操作的好例子。

EN

回答 1

Stack Overflow用户

发布于 2016-04-06 19:58:10

听起来您所描述的问题实际上并不是关于读取证书,而是简单地知道它们位于何处。

尝试构建可以自动发现可信证书在任何运行的计算机上所在位置的东西几乎肯定是不可能的,而且可能也不是一个好主意。

相反,这听起来应该用一个简单的环境变量来解决(问题毕竟是关于不同环境中证书路径的可变性)。

你可以设置3个环境变量,让我们称它们为CERT_PATHKEY_PATHCA_PATH。您可以在任何操作系统上配置这些,使其指向正确的位置。然后,您可以在应用程序中引用它们:

代码语言:javascript
复制
var fs = require('fs');  
var https = require('https');

var options = {  
    key: fs.readFileSync(process.env.KEY_PATH),
    cert: fs.readFileSync(process.env.CERT_PATH),
    ca: fs.readFileSync(process.env.CA_PATH),
};

https.createServer(options, function (req, res) {  
    console.log(new Date()+' '+
        req.connection.remoteAddress+' '+
        req.method+' '+req.url);
    res.writeHead(200);
    res.end("hello world\n");
  }).listen(4433);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36311701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档