簡體   English   中英

GCP - Cloud Run:“錯誤:禁止用戶訪問存儲桶”

[英]GCP - Cloud Run : "Error: The user is forbidden from accessing the bucket"

我正在編寫一個 GitHub 操作來將我的應用程序部署到 GCP 的“Cloud Run”服務。

name: Deploy to production

on:
  push:
    branches:
      - master

env:
  PROJECT_ID: XXX
  SERVICE_NAME: XXX
  RUN_REGION: XXX
  PACKAGE_VERSION : XXX

permissions:
  contents: read
  id-token: write

jobs:
  deployment-job:
    runs-on: ubuntu-latest
    environment: production
    steps:
      - uses: actions/checkout@v2
      - name: Authenticate to Google Cloud
        uses: google-github-actions/auth@v0
        with:
          workload_identity_provider: XXX
          service_account: XXX
      - name: Deploy to Cloud Run
        uses: google-github-actions/deploy-cloudrun@v0
        with:
          service: ${{ env.SERVICE_NAME }}
          source: gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE_NAME }}:${{ env.PACKAGE_VERSION }} # equivalent to "gcloud builds submit ..."
          region: ${{ env.RUN_REGION }}
          tag: ${{ env.PACKAGE_VERSION }}

我遇到了這個錯誤:

ERROR: (gcloud.beta.run.deploy) The user is forbidden from accessing the bucket [XXX]. Please check your organization's policy or if the user has the "serviceusage.services.use" permission

我試圖將此權限添加到我的服務帳戶,但我仍然遇到同樣的錯誤:

gcloud projects add-iam-policy-binding XXX --member=serviceAccount:XXX --role=roles/serviceusage.serviceUsageAdmin

我根據本教程設置了 Workload Identity Federation。

存儲管理員角色授予服務帳戶而不是存儲 Object 管理員,以允許您的 Github 操作使用工作流模板進行部署。

將 Workload Identity 設置為 Github Action 時出現此錯誤。 錯誤消息很奇怪,但問題出在工作流模板中。 該模板指示您授予Storage Objects Admin ,但是從也在模板中鏈接的所需權限頁面中,它說我們需要授予Storage Admin

您可能還需要授予服務使用消費者角色; 我已經有了它,所以我不確定是否需要它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM