我有一个 Cloud Run 服务来执行一些后台任务,我需要它每 15 分钟执行一次。
我正在使用完全符合我需要的 Cloud Scheduler 作业,每 15 分钟调用一次 HTTP 端点,但我还想设置身份验证以避免外部调用。
在作业配置页面中,它允许我添加身份验证标头,但我无法设置 OAuth 令牌,因为服务端点不被视为 Google 服务(它不以 "googleapis.com" 结尾)。
我应该如何处理 Cloud Scheduler - Cloud Run 身份验证?
我有一个 Cloud Run 服务来执行一些后台任务,我需要它每 15 分钟执行一次。
我正在使用完全符合我需要的 Cloud Scheduler 作业,每 15 分钟调用一次 HTTP 端点,但我还想设置身份验证以避免外部调用。
在作业配置页面中,它允许我添加身份验证标头,但我无法设置 OAuth 令牌,因为服务端点不被视为 Google 服务(它不以 "googleapis.com" 结尾)。
我应该如何处理 Cloud Scheduler - Cloud Run 身份验证?
Cloud Run 通过验证 OIDC 令牌而不是 OAuth 令牌进行身份验证。
请参阅此文档以了解如何设置 Cloud Scheduler: https ://cloud.google.com/scheduler/docs/http-target-auth
如果您通过 CLI 定义 Cloud Scheduler 作业, 您可以手动指定可用于身份验证的标头。
这允许比 OIDC 和 OAuth 更轻量级的解决方案。