【问题标题】:Two GOOGLE_APPLICATION_CREDENTIALS files两个 GOOGLE_APPLICATION_CREDENTIALS 文件
【发布时间】:2021-06-03 16:29:05
【问题描述】:

我不得不为 Google 的 Firebase 服务下载一个密钥,并为 pub/sub 下载另一个密钥。我应该如何使用 GOOGLE_APPLICATION_CREDENTIALS 关键字来引用这两个键?

【问题讨论】:

    标签: google-cloud-platform google-cloud-firestore google-cloud-pubsub


    【解决方案1】:

    通常您只使用一个具有所需权限的服务帐户。

    Application Default Credentials (ADC) 支持一个且只有一个由环境变量GOOGLE_APPLICATION_CREDENTIALS指定的服务账户JSON密钥文件。

    为 Google Cloud 编写代码时,SDK clients 支持将服务帐号指定为参数。在您的示例中,您将需要使用适当的凭据(服务帐户 JSON 密钥文件)创建 SDK 客户端。 Firebase 管理员客户端可以使用一个凭据,而 Pub/Sub 客户端可以使用另一个凭据。

    【讨论】:

      【解决方案2】:

      我遇到了完全相同的问题。我试图在一台机器上运行两个不同的 Firestore 服务。每个服务使用不同的 Firestore 项目。据我所知,要通过直接访问我的 JSON 密钥文件来显式进行身份验证,我需要执行以下操作:

      FirestoreClient 客户端 = 使用 ClientBuilderBase 及其属性:CredentialsPath FirestoreDb = FirestoreDb.Create(firestoreProjectId, client);

      但由于 ClientBuilderBase 是一个抽象类,我很难过。任何人如果有一些示例代码可以真正做到这一点,将会是一个真正的帮助。

      干杯 基思

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-03-07
        • 1970-01-01
        • 2021-05-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多