You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Cloud Run运行一段时间后出现服务调用授权错误该如何解决

GCP Cloud Run间歇式未授权报错排查方案

核心结论

Cloud Run不存在会触发未授权报错的单日调用次数上限,你遇到的The request was not authorized to invoke this service.报错属于身份认证/授权类问题,和调用量超限无关。

优先级最高的排查方向

如果你的任务初始运行正常、运行1小时左右就批量出现授权报错,重新部署Cloud Function后又能恢复正常,90%以上的概率是ID令牌未刷新导致的:
GCP OIDC ID令牌默认有效期仅为1小时,若你在Cloud Function的全局初始化逻辑中一次性获取了调用Cloud Run的ID令牌,后续所有请求都复用该固定令牌,令牌过期后就会触发授权报错。
修复方案:调整Cloud Function代码,每次发起Cloud Run调用前重新获取有效ID令牌,不要全局缓存长期复用令牌。

其他排查方向

  • 检查Cloud Function所用服务账号的状态:确认该服务账号未被禁用,且仍持有Cloud Run服务的roles/run.invoker权限,无组织/项目层面的服务账号权限限制。
  • 检查VPC服务控制配置:若项目启用了VPC服务控制边界,确认Cloud Function的服务账号、出口网段已加入对应边界的允许列表,无近期规则变更导致的拦截。
  • 检查审计日志:查看对应报错时间点的Cloud Audit Logs,确认是否存在未记录的IAM权限变更、服务账号配置变更、Cloud Run安全配置变更操作。
  • 检查Cloud Function运行身份配置:确认Cloud Function运行时所用的服务账号拥有iam.serviceAccounts.getOpenIdToken权限,可正常获取调用Cloud Run所需的有效令牌。

内容的提问来源于stack exchange,提问作者p_mo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 00:54:02