【发布时间】:2021-11-05 12:16:31
【问题描述】:
GCP 项目包括一个每分钟抓取特定网站的管道。 Cloud Scheduler 设置为每分钟触发一次,并向 Cloud 函数发布请求,然后调用我遇到问题的 Cloud Run 容器。 Cloud Scheduler 和 Function 工作正常,每分钟提交一次请求,并且它们的日志没有显示任何错误。
但是,每次运行抓取时,Cloud Run 容器都会返回此消息:
The request was not authorized to invoke this service. Read more at https://cloud.google.com/run/docs/securing/authenticating
我该如何解决这个错误?我认为这与未授权调用 Run 容器的 Cloud Function 有关,但我不确定该怎么做。如果需要,我会添加更多信息。 谢谢!
注意:这个问题类似于我不久前发布的this。但是,现在的不同之处在于容器会立即开始抛出这些错误,而之前它会在失败之前运行一段时间。
【问题讨论】:
-
Cloud Run 服务的身份验证设置显示什么以及您为 Cloud Function 服务帐户附加了哪些权限?
-
Cloud Scheduler 可以直接调用 Cloud Run。除非 Cloud Functions 还提供额外价值,否则请移除该服务。
-
@Asdfg 我已允许所有流量并要求使用 IAM 进行身份验证。您知道 Cloud Functions 对应的是哪个服务邮箱吗?
-
@JohnHanley 我会尝试删除云功能,但我不知道这是否可能。
-
如果您询问 Cloud Functions 对应的服务电子邮件是什么,您需要了解一些基本的工作原理。这将为您节省大量时间和麻烦。
标签: google-cloud-platform google-cloud-functions google-cloud-run