【问题标题】:403 when using firebase API to create a project (As an owner user, not a service account)使用 firebase API 创建项目时出现 403(作为所有者用户,而不是服务帐户)
【发布时间】:2020-03-16 05:27:59
【问题描述】:

我正在尝试使用 api 创建一个 firebase 项目。相关文档在这里:https://firebase.google.com/docs/projects/api/reference/rest/v1beta1/projects/addFirebase

我已经创建了一个 GCP 项目,并且我是该项目的所有者。我可以在以下请求中看到我的项目: https://firebase.google.com/docs/projects/api/reference/rest/v1beta1/availableProjects/list 。它的项目 ID 为:projects/my-project-id-here

我作为 GCP 项目用户帐户的所有者(我没有使用服务帐户!)使用具有正确范围的 Google OAuth 2.0 提出请求(您可以在文档中尝试),但我收到以下回复:

{
  "error": {
    "code": 403,
    "message": "The caller does not have permission",
    "status": "PERMISSION_DENIED"
  }
}

如果我直接去firebase网站并在那里创建项目,我可以很好地创建firebase项目。

Google 需要 30 天的时间来删除我的测试项目,因此我只能尝试从头开始解决此问题的次数。因此,我也很想知道您如何在不删除该项目的情况下从 GCP 项目中完全取消链接 firebase。从 GCP 控制台删除服务帐户并禁用 API 似乎并没有解决问题。

最后,我不知道这是否相关,但我也有与 google play 上的开发者帐户相同的用户帐户设置,并且 GCP 项目已链接到 API 访问,它创建的服务帐户授予访问权限。不过我认为这无关紧要,因为我的理解是我可以在没有这个的情况下设置一个 firebase 项目。

希望有人能帮忙!

【问题讨论】:

  • 除非您将项目创建为 organization 的一部分,否则您不能使用 API 创建项目。 cloud.google.com/resource-manager/docs/quickstart-organizations
  • 嗨,约翰,感谢您的评论。但是,正如问题中所述,我已经创建了一个 GCP 项目。
  • 嗨,约翰,情况并非如此。我想使用一个已经为其他事情设置和配置的 GCP 项目。我已经让它在没有父级的 GCP 项目上工作(我在项目中拥有所有者角色)。基本上我一直在手动创建 firebase 项目,但我从来没有点击过,所以还没有接受他们的开发者条款和条件,这些条款和条件似乎限制了一些 API 请求(未记录)。
  • 你可能是对的。我在你的问题中忽略了FIREBASE

标签: firebase google-cloud-platform firebase-admin google-play-console


【解决方案1】:

我已经找到了解决方案。您不能使用 firebase API 来创建 firebase 项目,除非您首先接受了在您进入 firebase 项目之前不会显示给您的条款和条件(如图)。

无论如何这里有一些明确的步骤:

  1. 通过网站创建一个 firebase 项目
  2. 打开 firebase 项目
  3. 接受使用 Firebase 的条款和条件
  4. 删除 firebase 项目并享受 API 现在正在运行。

【讨论】:

    【解决方案2】:

    关于您有兴趣从项目中删除 firebase,不支持此操作。最好的做法是撤消添加 firebase 时所做的更改,即禁用 firebase API、删除 oauth 客户端/品牌、删除 API 密钥等,这些都是您已经完成的,这是最接近删除项目的事情.

    【讨论】:

      猜你喜欢
      • 2018-03-16
      • 2021-09-30
      • 2016-07-28
      • 2020-04-10
      • 2019-07-21
      • 2023-01-24
      • 2013-10-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多