如何在我的应用引擎中仅允许内部 (cron) 请求



目前我正在使用nodejs App Engine(灵活的环境)来执行计划任务,例如关闭和启动实例或创建shapshots。问题是这些应用引擎可以从任何地方访问,但我只希望它们在我的谷歌云网络中可以访问。我似乎真的无法让防火墙以这种方式工作。有谁知道有没有办法这样做?

要强制仅在 Google Cloud Network 中触发 cron 作业,您可以检查请求的 X-Appengine-Cron: true 标头和客户端 IP 是否0.1.0.1

从文档:

您可能希望验证对 cron URL 的请求是否即将到来 来自 App 引擎,而不是来自其他来源。您可以通过以下方式执行此操作 验证请求的 HTTP 标头和源 IP 地址:

  • 来自 Cron 服务的请求还将包含一个 HTTP 标头:

    X-Appengine-Cron: true

X-Appengine-Cron标头由Google App Engine在内部设置。 如果请求处理程序找到此标头,它可以信任 请求是 cron 请求。X- 标头由 App Engine 剥离 当它们来自外部来源时,以便您可以信任它 页眉。

  • Google App Engine 从 IP 地址 0.1.0.1 发出 cron 请求

相关内容

  • 没有找到相关文章

最新更新