0

对于允许从 AWS 或 Azure 等公共云访问我公司后端服务的最合适方式,我有一些疑问,反之亦然。在我们的例子中,我们需要一个 AWS 应用程序来调用我们后端公开的一些 HTTP Rest 服务。

我提出了至少两个选择:

  • 第一个是在应用程序和我们的后端之间设置一个 AWS 虚拟私有云,并通过它路由所有流量。
  • 第二种选择是通过反向代理公开 HTTP 服务并在代理中设置 IP 过滤以仅允许来自 AWS 的收入连接。我们不希望 HTTP 服务可以从 Internet 公开访问,我认为无论我们选择一个选项还是另一个选项都可以满足此要求。此外,我们可能需要在 AWS 和我们的后端之间集成更多服务 (TCP/UDP),例如 FTP 传输、监控等。

我的主要目标是设置一种标准方式来完成这种集成,因此我们不需要根据服务或应用程序的类型使用不同的配置。

我认为这是混合云场景中非常普遍的需求,所以我只想接受最佳实践。

我将非常感谢您的任何建议。

4

1 回答 1

0

您的选项#2 似乎不错。由于您拥有 AWS VPC,因此您可以通过反向代理获取 IP 以列入白名单。

还有另一种方法。也就是说,将您的后端公开为受 Oauth 令牌保护的 API。为此,您需要某种 API 管理解决方案。然后,您的 Node.js 应用程序可以使用令牌调用这些 API。

WSO2 API Cloud 允许您在云中创建这些 API 并在您的数据中心运行 api 网关。然后 Node.js api 调用将访问本地网关,它将验证令牌并让请求转到后端。您无需将后端服务公开到 Internet。请参阅此博客文章。 https://wso2.com/blogs/cloud/going-hybrid-on-premises-api-gateways/

于 2018-02-14T15:54:03.703 回答