0

我想在 Bluemix Public 上将 REST-ful 服务作为 API 公开给外界。因此,我有一个自由应用程序,其中包含在 JAX-RS 中实现的 REST 服务。

此外,我利用“API 管理服务”通过计划、身份验证等来保护该应用程序。因此,多亏了 API 管理网关,我有一个安全代理来暴露我的服务。

然而,提供我的服务的应用程序仍然可以通过 Bluemix 路由向外部访问。因此,它可以在没有任何凭据或任何凭据的情况下调用。

有没有办法只让我的 API 管理网关访问服务实现应用程序?

一种方法是删除服务实现应用程序的路由,但您如何将 API 管理绑定到服务?

很高兴听到您的想法或替代解决方案。

4

1 回答 1

1

如果您的 API 作为 Cloud Foundry 应用程序在 Bluemix Public 上运行,那么目前没有办法创建一个路由,以便它只能由 API 管理服务访问,而外部世界不能访问。您应该在您的 jax-rs 应用程序中实现安全性(使用 web.xml security-constraint 很容易)并将这些凭据添加到 APIm 服务,如果您仍想使用 APIm 进行监控、节流、发现等。

另一种选择是将应用程序部署在 VM 中,然后使用 Secure Gateway 连接到它: https ://github.com/IBM-Bluemix/onprem-integration-demo

于 2016-02-13T18:10:49.457 回答