在AppEngine上保护cron调度端点(灵活环境)

时间:2017-04-21 21:40:46

标签: google-app-engine

我正在尝试通过cron.yaml在AppEngine灵活环境中安排我的数据流作业。当我的端点不受保护时,这可以完美地工作。但是,在尝试secure the endpoint时,即使从TaskQueues界面中触发它,我也会看到403状态响应。

我的app.yaml看起来像这样:

runtime: java
env: flex

handlers:
- url: /.*
  script: this field is required, but ignored
- url: /dataflow/schedule
  script: this field is required, but ignored
  login: admin

runtime_config:
  jdk: openjdk8

resources:
  cpu: .5
  memory_gb: 1.3
  disk_size_gb: 10

manual_scaling:
  instances: 1

1 个答案:

答案 0 :(得分:4)

安全处理程序(如login:admin)不适用于App Engine Flexible,这就是403的原因。

为了保护该处理程序,您可以检查请求标题" X-AppEngine-Cron"在您的应用中,这是一个受信任的标头,仅由来自App Engine的流量设置。