【发布时间】:2016-08-31 20:18:39
【问题描述】:
我有 node.js bluemix 应用程序。我不希望 bluemix 应用程序 url 公开可用。有没有办法限制仅从某些 IP 地址访问 bluemix 应用程序? 我知道我可以在应用程序本身中构建身份验证,但我试图避免这种情况。 提前致谢。
【问题讨论】:
标签: ibm-cloud
我有 node.js bluemix 应用程序。我不希望 bluemix 应用程序 url 公开可用。有没有办法限制仅从某些 IP 地址访问 bluemix 应用程序? 我知道我可以在应用程序本身中构建身份验证,但我试图避免这种情况。 提前致谢。
【问题讨论】:
标签: ibm-cloud
Bluemix CloudFoundry 平台无法将路由限制到某个 IP 地址。正如您所说,所有身份验证都必须是应用程序逻辑的一部分。
查看 express-ipfilter npm 模块: https://www.npmjs.com/package/express-ipfilter
将某些 IP 地址列入白名单,同时拒绝所有其他 IP:
// Init dependencies
var express = require('express')
, ipfilter = require('express-ipfilter')
, app = express.createServer()
;
// Whitelist the following IPs
var ips = ['127.0.0.1'];
// Create the server
app.use(ipfilter(ips, {mode: 'allow'}));
app.listen(3000);
【讨论】:
正如 Ram 所提到的,您不能将 Bluemix 应用程序的路由限制到某个 IP,但有一个使用 IBM Containers 的替代方法。
您可以在 IBM Container (docker) 中部署您的 node.js,并使用 IBM VPN 服务将您的容器实例的访问限制为您公司的 VPN。
您可以在此处找到有关此服务的更多详细信息:
【讨论】: