AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1073359
Accepted
neuberfran
neuberfran
Asked: 2021-08-03 13:53:45 +0800 CST2021-08-03 13:53:45 +0800 CST 2021-08-03 13:53:45 +0800 CST

googleapi:错误 403:[email protected] 没有 storage.objects.get 访问 Google Cloud Storage 对象的权限

  • 772

我继续基于此尝试我的项目:https ://github.com/GoogleCloudPlatform/iot-smart-home-cloud

我的问题是:

cloudfunctions.googleapis.com google.cloud.functions.v1.CloudFunctionsService.UpdateFunction projects/casaminha-2e0ca/locations/us-central1/functions/syncOnRemove [email protected] 构建失败:无法解析源:googleapi:错误 403:567xxxx1772xxxxxxxxxxxx @cloudbuild.gserviceaccount.com 没有 storage.objects.get 访问 Google Cloud Storage 对象的权限。禁止 com.google.net.rpc3.client.RpcClientException: APPLICATION_ERROR;google.devtools.cloudbuild.v1/ArgoAdminV1.CreateBuild;无法解析来源:googleapi:错误 403:[email protected] 没有 storage.objects.get 访问 Google Cloud Storage 对象。禁止;AppErrorCode=3;StartTimeMs=999999999999540;unknown;ResFormat=AUTOMATIC; ServerTimeSec=0.999999999999999;LogBytes=256;非

我在 2021 年 7 月 27 日云构建或云运行中删除(我不在我的项目中使用云运行)我在 GCP 控制台中删除。我认为这就是我在谷歌上的行动项目中出现凭据错误的原因。然后我开始收到当前的错误。

我记得我删除的服务帐户只与谷歌控制器相关联(那里有一个问号)

我认为 gcf 命令将重建它。但不确定这是否正确。而且我也不知道如何使用gcf-sources-<PROJECT_NUMBER>-

我一直在使用 firestore 和 GCP 在 google 上尝试操作。

命令:

firebase --project casaminha-2e0ca 功能:配置:设置 cloudiot.region=us-central1

firebase --project casaminha-2e0ca 功能:配置:设置 smarthome.id=567617xxxxxxxxxxxxxx9r9upjxxxxxxx0t.apps.googleusercontent.com smarthome.secret=D99999999999

firebase --project casaminha-2e0ca 功能:配置:设置 smarthome.key="99999999"

firebase 部署 --project casaminha-2e0ca

这是我在 github 中的项目:https ://github.com/neuberfran/firebasefunction

这是我的问题跟踪器:https : //issuetracker.google.com/issues/194942955 ?pli=1

你能帮我吗

google-cloud-platform google-cloud-storage
  • 3 3 个回答
  • 1822 Views

3 个回答

  • Voted
  1. Best Answer
    JM Gelilio
    2021-08-03T20:00:29+08:002021-08-03T20:00:29+08:00

    当您使用 Cloud Function 时,必须启用 Cloud Build API 才能部署您的 Cloud Function,教程(开始之前)中对此进行了详细记录。当您在 Google Cloud 项目中启用 Cloud Build 服务时,Cloud Build 服务帐户将自动生成,它看起来像:

    [PROJECT-ID]@cloudbuild.gserviceaccount.com
    

    关于这一点:

    我在 2021 年 7 月 27 日删除了云构建或云运行(我的项目中没有使用云运行)我在 GCP 控制台中删除

    请注意,删除服务帐户:

    删除服务帐号后,应用程序将无法再通过该服务帐号访问 GCP 资源。

    根据您的问题跟踪器,似乎解决方案是恢复您已删除的服务帐户。已删除的服务帐户可以在 30 天内恢复。要取消删除或恢复,您必须找到可在 Cloud Logging/Log Explorer 中获取的已删除服务帐号的数字 ID 或 ACCOUNT_ID,这里是教程。

    获取数字 ID 或 ACCOUNT_ID 后,在 CLI 或 Cloud Shell 或 Cloud SDK 中运行以下命令:

    gcloud beta iam service-accounts undelete ACCOUNT_ID
    

    输出:

    restoredAccount:
      email: SA_NAME@PROJECT_ID.iam.gserviceaccount.com
      etag: BwWWE7zpApg=
      name: projects/PROJECT_ID/serviceAccounts/SA_NAME@PROJECT_ID.iam.gserviceaccount.com
      oauth2ClientId: '123456789012345678901'
      projectId: PROJECT_ID
      uniqueId: 'ACCOUNT_ID'
    

    更新:

    错误的根本原因是缺少`Cloud Build Service Account`权限,通过添加此权限解决了。
    • 2
  2. intotecho
    2022-02-09T22:06:31+08:002022-02-09T22:06:31+08:00

    就我而言,我没有删除服务帐户,只是删除了服务帐户的 IAM 角色。

    解决方案是转到 IAM 页面,并添加 principal: [PROJECT-ID]@cloudbuild.gserviceaccount.com with role:Cloud Build Service Account

    • 0
  3. Alex Flint
    2022-03-30T14:23:03+08:002022-03-30T14:23:03+08:00

    就我而言,我最近刚刚在我的项目上启用了 Cloud Build API,我只需要多等 2 分钟就可以了。我很高兴我在等待的时候没有白费力气地搞乱 IAM 角色!

    • 0

相关问题

  • 带有 OpenVPN 的 Google Compute Engine 上的 VPN 服务器

  • 如果您失去了 Google Apps 的管理员权限,如何恢复?

  • 云有多大?[关闭]

  • 谷歌应用引擎中的 joomla

  • 无需短信即可注册 Google AppEngine?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve