Google Cloud 任务触发仅内部入口的 Cloud Function

Tho*_*ble 10 google-cloud-platform google-cloud-functions google-cloud-tasks

当该函数的入口设置设置为“仅允许内部”时,如何从云任务触发该云函数?

通过该设置,该函数将拒绝来自 Cloud Tasks 的传入 HTTP 流量。即使Cloud Tasks 与该函数位于同一项目中,也会出现此行为。

gui*_*ere 6

这很有趣,因为我在本周二向 Google PM 询问了这一问题!因为今天你不能!它在总理的雷达范围内,没有时间表,但有可能,一天。

我今天的解决方案。

如果我有一个仅内部模式的云函数,该函数在内部和外部使用(或者由不符合 VPC 连接器的 Google 无服务器产品使用,例如 Cloud Task、Cloud Scheduler、PubSub 和 Workflows),我会创建一个“代理函数”

  • ingress=all该代理函数以mode 和no-allow-unauthenticatedparam部署
  • 我仅将外部产品的服务帐户授予代理函数上的 cloudfunctions.invoker,以确保只有该服务帐户才能调用代理函数
  • 我创建一个无服务器 VPC 连接器并将其添加到代理功能
  • 代理函数只调用内部函数。