我正在使用CLI工具构建混合移动应用程序,它有一个很酷的上传功能,因此我可以在设备上测试应用程序,而无需通过应用store (它是ionic CLI).然而,在我的公司,像许多其他公司一样,TLS请求是用公司自己的定制CA证书重新签署的,我在我的机器上的密钥链(OS X)中有该证书.然而,nodejs不使用密钥链来获取其信任的CA列表.我不控制ionic cli应用程序,所以我不能简单地将{ca:}属性传递给https模块.我也可以认为这是我无法控制的任何 node 应用程序的问题.可以告诉nodejs信任CA吗?

我不确定这是否属于信息安全或任何其他交流...

推荐答案

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]

Node.js相关问答推荐

(0,core_1.default)不是使用@middy/core的lambda处理程序上的函数

如何从shell脚本中计算ecmascript模块?

Node.js中Redis的并发问题

Next.js 路由不起作用 - 页面未正确加载

express app.post的多个参数在Node.js中的定义是什么

Mongoose post中间件触发deleteMany

express 和 mongoose 的新密码不正确

NestJS 共享模块的问题

为什么需要在 NodeJS 应用程序中创建服务器?

如何在 Nest.js 中使用查询参数?

使用加密模块的流功能获取文件的哈希(即:没有 hash.update 和 hash.digest)

node_modules 中 .bin 文件夹的用途是什么?

如何以编程方式检测nodejs中的调试模式?

Passport 登录和持久会话

带有加密的nodejs中的SALT和HASH密码

使用 ES6 语法和动态路径导入模块

npm publish 导致'错误:EPERM:不允许操作,取消链接...',errno -4048

对不同对象中的函数使用相同的键时,V8 中的函数调用缓慢

如何在express 中设置默认路径(路由前缀)?

在 Node.js 中写入 CSV