一尘不染

如何向Node.js添加自定义证书颁发机构(CA)

node.js

我正在使用CLI工具来构建具有很酷的上传功能的混合移动应用程序,因此我可以在设备上测试该应用程序而无需通过应用程序商店(ionic-
cli)。但是,在我的公司中,像许多其他公司一样,TLS请求使用我自己在钥匙串(OS
X)的计算机上拥有的自定义CA证书重新签名。但是,nodejs不会使用钥匙串来获取其信任的CA列表。我无法控制ionic-
cli应用程序,因此无法简单地将{ca:}属性传递给https模块。对于任何我无法控制的节点应用程序,我也可以看到这是一个问题。是否可以告诉nodejs信任CA?

我不确定这是否属于信息安全部门或其他任何交易所…


阅读 791

收藏
2020-07-07

共1个答案

一尘不染

Node.js
7.3.0(以及LTS版本6.10.0和4.8.0)添加了NODE_EXTRA_CA_CERTS环境变量,以供您传递CA证书文件。这比使用禁用证书验证更安全NODE_TLS_REJECT_UNAUTHORIZED

$ export NODE_EXTRA_CA_CERTS=[your CA certificate file path]
2020-07-07