0

Web 应用程序(war)提供了两组 HTTP API,一组对 Internet 上的客户端公开,另一组供内部使用,不应该对 Internet 公开。网络部署以保护内部 API 的最佳实践是什么?

我知道一种常见的方法是将应用程序拆分为两个可部署项,将提供公共 API 的前端放在 DMZ 中,将提供内部 API 的后端放在内部网络中。但出于某种原因,我想将应用程序保持为可部署的。

4

2 回答 2

1

您可以在这里尝试一些事情。对于私有 API,我真的建议将其切断到它自己的应用程序中,该应用程序只监听本地地址。如果您必须将它们放在一起,您可以实现使用内部 API 所需的某种 oauth 设置,这样只有拥有有效 oauth 令牌的用户才能完成对受限资源的 API 请求。

于 2012-07-17T17:22:49.503 回答
1

最后我们引入了一个反向代理来隐藏内部网络中的 API。来自 Internet 的客户端只能连接到反向代理,反向代理被配置为仅将公共 API 的请求转发到应用程序。

于 2012-09-04T08:50:22.120 回答