node.js - 如何在 Node.js 应用程序中使用私有(private)安全连接?

标签 node.js integration ibm-cloud

我已经建立了私有(private)云集成>基本安全连接,但要使用/访问它,我必须在我的node.js应用程序中使用相互TLS( BlueMix 上也已启用)。
我看过这个帖子:https://developer.ibm.com/bluemix/2015/04/17/securing-destinations-tls-bluemix-secure-gateway/它描述了一种使用私有(private)安全连接的方法。

但我想做的是将 HTTPS 请求发送到安全连接,以便它到达我的后端。在 node.js 中,我有一个处理用户操作的 HTTP 服务器,并且我使用以下代码发出 HTTPS 请求:

var https = require('https');
var fs = require('fs');
var options = {
        host: cloud_ip,
        port: cloud_port,
        path: '/path_to_resource',
        method: 'POST',     
        cert: fs.readFileSync('<endpoint>-basic-client-cert.pem'),
        key: fs.readFileSync('<endpoint>-basic-private-key'),
        ca: fs.readFileSync('DigiCertCA2.pem'),
        agent: false,
};
var req = https.request(options, callback);
req.on('error', function(e) {
    io.emit('message', 'Error: ' +JSON.stringify(e));
});
req.end()

我没有从后端得到任何响应,我尝试监视 Wireshark(本地)发生的情况,并且似乎连接被拒绝/拒绝。我真的不知道应该如何处理从 BlueMix 下载的不同证书。如果有人可以提供帮助,我将非常感激。

最佳答案

云集成当前不支持与也使用 TLS 或 HTTPS 的后端的相互 TLS。您需要允许通过 HTTP 访问您的应用,云集成双向 TLS 才能正常运行。

完成此操作后,您应该会看到连接到达您的后端。

关于node.js - 如何在 Node.js 应用程序中使用私有(private)安全连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29965207/

相关文章:

python - 访问 IBM Watson nl-classifier 中的置信度参数

docker - 卷并未真正安装到 IBM Bluemix 上的 docker 容器

c# - 使用C#验证paypal支付

hadoop - 在Hive/HBase集成中出现MR抓取错误

python - 如何使用 Python 向 Bluemix CF API 进行身份验证

node.js - 错误: Cannot query across one-to-many for property TypeORM

jquery - Pikachoose/Fancybox 集成 - 灯箱上的导航箭头

node.js - NODE JS - 永远的启动路径问题

node.js - StrongLoop 环回 - 错误 : Cannot find module 'on-finished'

javascript - Node JS - 在不知道键的情况下通过键合并对象