我在哪里可以获得Firebase Admin的"serviceAccountCredentials.json"?

Nic*_*hek 19 java firebase firebase-authentication firebase-realtime-database

这里说的是我需要在java上设置Firebase:

FirebaseOptions options = new FirebaseOptions.Builder()
    .setDatabaseUrl("https://databaseName.firebaseio.com")
    .setServiceAccount(new FileInputStream("path/to/serviceAccountCredentials.json"))
    .build();
FirebaseApp.initializeApp(options);
Run Code Online (Sandbox Code Playgroud)

但是我在哪里可以获得serviceAccountCredentials.json

更新: 我发现这个文件似乎应该有这个字段,但是哪里得到这个值?

{
  "type": "",
  "project_id": "",
  "private_key_id": "",
  "private_key": "",
  "client_email": "",
  "client_id": "",
  "auth_uri": "",
  "token_uri": "",
  "auth_provider_x509_cert_url": "",
  "client_x509_cert_url": ""
}
Run Code Online (Sandbox Code Playgroud)

Nic*_*hek 32

此链接中找到有关此的详细信息

要创建文件,您需要转到此链接

https://console.firebase.google.com/project/**YOUR_PROJECT**/settings/serviceaccounts/adminsdk
Run Code Online (Sandbox Code Playgroud)

来自firebase文档的引用:

  1. 导航到项目设置页面中的" 服务帐户"选项卡.
  2. 单击" 服务帐户"选项卡的Firebase Admin SDK部分底部的" 生成新私钥"按钮.

单击该按钮后,将下载包含您的服务帐户凭据的JSON文件.您需要在下一步中初始化SDK.

警告:在代码中处理服务帐户凭据时要格外小心.不要将它们提交到公共存储库,将它们部署在客户端应用程序中,或以任何可能危及Firebase项目安全性的方式公开它们.

此文件仅生成一次.如果丢失或泄漏密钥,您可以重复上述说明为服务帐户创建新的JSON密钥.

  • 当你生成新的私钥时,旧的私钥会立即停止工作吗? (6认同)
  • JSON 文件应该保存在哪里? (2认同)

小智 5

您可以直接转到您的Firebase 门户-->项目设置,然后是服务帐户。我制作了一个解释所有细节的教程:How to get my Firebase Service Account Key file