【问题标题】:Google Cloud Run Deploy error: Missing necessary permission errorGoogle Cloud Run Deploy 错误:缺少必要的权限错误
【发布时间】:2020-07-07 22:08:21
【问题描述】:

当尝试将我的容器(或 hello world 容器)部署到 google cloud run 时,我收到此错误:

ERROR: (gcloud.run.deploy) Cloud Run error: Internal system error. Missing necessary permission for service-<ID>@serverless-robot-prod.iam.gserviceaccount.com on resource <PROJECT ID>

我可以看到错误中提到的服务帐户位于我的 IAM 仪表板中,并且具有 Google Cloud Run Service Agent 角色。我什至尝试赋予它 Owner 角色,但没有成功。

我尝试在同一服务帐户中包含 --service-account 标志并收到此错误:

PERMISSION_DENIED: Permission 'iam.serviceaccounts.actAs' denied on service account service-<ID>@serverless-robot-prod.iam.gserviceaccount.com (or it may not exist).

我知道这没有意义。

我也尝试通过控制台 ui 进行此部署,但收到相同的错误(第一个错误)。

如何解决此权限错误?

【问题讨论】:

  • 在您提出这个影响 IAM 权限的问题时,有 an outage,现在可以吗?
  • 是的,现在可以使用了!
  • 由于暂时性问题,我投票决定将此问题作为题外话结束。

标签: google-cloud-run


【解决方案1】:

我命令分配iam.serviceAccounts.actAs 权限,您必须设置roles/iam.serviceAccountUser 角色。

您可以通过转到控制台 > IAM & Admin 并将 Service Account User 角色设置为您的服务帐户来执行此操作。

另外,请确认 Cloud Run 运行时服务帐号也具有iam.serviceAccounts.actAs 权限。这是Cloud Run deployment permissions docs中指定的要求

【讨论】:

    【解决方案2】:

    正如 Dustin 所说,发生了影响 IAM 权限的中断。现在已经解决了中断问题,我的部署正在运行!

    【讨论】:

      猜你喜欢
      • 2021-01-24
      • 1970-01-01
      • 2019-09-27
      • 2020-08-16
      • 2021-10-31
      • 1970-01-01
      • 2020-09-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多