【问题标题】:How Can I Obtain GCP service account credentials on Google Cloud Run?如何在 Google Cloud Run 上获取 GCP 服务帐号凭据?
【发布时间】:2020-05-18 20:58:38
【问题描述】:

This page 解释了两者:

  1. Obtaining and providing service account credentials manually 用于本地开发、本地部署或部署到另一个公共云。
  2. Obtaining credentials on Compute Engine, Kubernetes Engine, App Engine flexible environment, and Cloud Functions

但没有提及在 Cloud Run 上获取凭据。如果您提供有关获取凭据和设置 firebase-admin initializeApp 和 firebase initializeApp 以在 Cloud Run 上进行身份验证的说明,我将不胜感激。

【问题讨论】:

    标签: firebase google-cloud-platform firebase-admin google-cloud-run google-iam


    【解决方案1】:

    文档建议您可以像 here 所述的其他 Google Cloud 产品一样使用默认服务帐户。 Firebase Admin SDK 在不带参数初始化时应使用该帐户。

    如果你想use a non-default service account,也有描述的步骤,你可以简单地在控制台中配置或使用gcloud提供。

    如果您必须提供在运行时可读的文件,则必须部署一个映像,并将该文件添加到映像中。添加该文件没有简单的步骤 - 您必须让您的 docker build 将其包含在一个可读的位置,并且您的代码将知道在哪里查找它以便加载它。

    【讨论】:

    • 当我在没有参数的情况下初始化 Firebase Admin SDK 时,它返回以下错误消息:``` { [错误:您的 API 密钥无效,请检查您是否复制正确。] 代码:' auth/invalid-api-key', message: '您的 API 密钥无效,请检查您是否正确复制了它。' } ```
    • 在服务器上初始化时,admin sdk 不需要凭据 - 如果该服务器在 GCP 上运行 -。 firebase sdk(您在其上调用 initializeApp)确实需要 API 密钥和 firebase 配置
    • @WietseVenema 您在哪个文档页面上找到了这些信息?另外,如果您回答我最初的问题,我将不胜感激:请提供有关获取凭据和设置 firebase-admin initializeApp 和 firebase initializeApp 以在 Cloud Run 上进行身份验证的说明。如果我必须传递 API 密钥和 firebase 配置,将其传递给我的 Cloud Run Node.js 应用程序的最佳做法是什么?
    • @WietseVenema firebase.google.com/docs/admin/… 解释说:“注意:FIREBASE_CONFIG 环境变量自动包含在 Cloud Functions 中,用于通过 Firebase CLI 部署的 Firebase 函数。”那我为什么会得到那个错误呢?
    • 您的问题是关于 Cloud Run,它是与 Cloud Functions 完全不同的产品。它们的工作方式不同,而且 Firebase 没有为 Cloud Run 提供一个部署器,可以像它为 Cloud Functions 所做的那样进行设置。
    猜你喜欢
    • 2020-10-21
    • 2015-04-29
    • 2014-09-24
    • 1970-01-01
    • 2020-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-16
    相关资源
    最近更新 更多