如何限制公众访问谷歌应用程序引擎灵活的环境?

时间:2017-05-17 05:18:57

标签: google-app-engine app-engine-flexible

我在app引擎中有许多微服务仅供内部使用。但是,默认情况下,应用引擎会将service-project.appspot.com域打开为公开,任何人都可以通过httphttps访问它们。 有没有办法限制只对某个IP地址的访问?

我能想到的琐碎方法是检查应用程序代码中的源IP地址。 或者,我可以使用nginx配置创建自定义docker镜像,以检查源IP地址。但是,这些并不是很干净的解决方案,因为访问控制实际上独立于应用程序,我不想在容器内硬编码静态IP地址。

我认为有一种方法可以为app引擎设置防火墙规则,但我找不到它。 Identity-Aware Proxy似乎是另一种选择,但它不适用于app engine flex。

1 个答案:

答案 0 :(得分:1)

我知道这很冷,但我们正在努力为IAP重新启用App Engine灵活支持。不过,它不仅仅是几天。

https://cloud.google.com/appengine/docs/flexible/java/migrating#users有一些选项可能比硬编码IP更可口。您无法使用GCE防火墙规则,因为appspot.com流量来自云HTTP负载均衡器,因此GCE实例防火墙只能看到负载均衡器的IP。如果您执行想要验证应用中的IP,请按照https://cloud.google.com/compute/docs/load-balancing/http/#components所述使用X-Forwarded-For。

希望这有帮助! --Matthew,Cloud IAP工程师