【问题标题】:Firebase PHP Admin SDK CredentialsFirebase PHP 管理员 SDK 凭据
【发布时间】:2018-01-09 21:32:27
【问题描述】:

我打算结合 PHP、GAE 和 Firebase 数据库。

我尝试使用 Firebase Admin SDK for PHP,遵循这些 instructions

然后,我看到了这两个代码:

手动

use Kreait\Firebase\Factory;
use Kreait\Firebase\ServiceAccount;

$serviceAccount = 
ServiceAccount::fromJsonFile(__DIR__.'/firebase_credentials.json');
$firebase = (new Factory)
    ->withServiceAccount($serviceAccount)
    ->create();

启用用户管理

use Kreait\Firebase\Factory;
use Kreait\Firebase\ServiceAccount;

$serviceAccount = ServiceAccount::fromJsonFile(__DIR__.'/google-service-account.json');
$apiKey = '<Firebase Web API key>';

$firebase = (new Factory)
    ->withServiceAccountAndApiKey($serviceAccount, $apiKey)
    ->create();

我尝试手动安装firebase_credentials.json,效果很好。

但是...我应该使用 Google 服务帐户凭据来使用用户管理吗?

我知道它在文档中说,但以下有什么区别?

  • 使用firebase_credentials.json
  • 使用google-service-account.json

我将计划在未来使用 Firebase JWT。因此,获得一些建议可能会有所帮助。

【问题讨论】:

    标签: php google-app-engine jwt service-accounts firebase-admin


    【解决方案1】:

    首先,感谢您考虑为您的项目使用该库。自您提出问题以来,我已经更新了文档,希望现在更清楚一点。此外,不再需要提供 Web API 密钥来启用用户管理,您只需使用下载的凭据文件,一切都会正常工作。

    回答您的问题:firebase_credentials.jsongoogle-service-account.json 引用同一种凭据文件,即您可以在项目设置页面的Service Accounts 选项卡中下载的凭据文件。

    使用任何可用的 Admin SDK,这将启用对项目的完全管理访问权限,因此您应该小心处理。

    请注意,自从您提出问题以来,已经发布了一个新的主要版本,并且使用说明发生了变化(但变化不大)。您可以在https://firebase-php.readthedocs.io 找到更新的文档。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-09-23
      • 2019-03-14
      • 1970-01-01
      • 2019-12-28
      • 2019-02-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多