Firebase工具:登录为服务帐户

时间:2017-08-01 12:02:21

标签: node.js firebase google-cloud-functions firebase-tools

我找不到如何代表服务帐户部署firebase项目(函数)的方法。

documentation page上没有任何内容,我发现bug tracker中没有任何内容。

如上所述,我运行firebase login:ci命令,但我需要自己登录 - 我想登录为服务帐户。

使用gcloud工具可以使用此功能,但正如docs中所述,

  

使用Firebase SDK for Cloud Functions编写的云功能无法使用gcloud命令行工具进行部署,反之亦然。

3 个答案:

答案 0 :(得分:4)

firebaser here

要使用Firebase CLI /工具,您需要以实际用户身份登录。无法将Firebase CLI作为服务帐户运行。

虽然它被认为是一个有效且有趣的功能请求!有些可能有助于此功能的工作正在this PR中完成。像往常一样:没有关于是否/何时/如何降落的承诺。请关注release notes以获取最新更新。

答案 1 :(得分:4)

这有效:

$> gcloud iam service-accounts keys create ./secrets.json --iam-account=<SERVICE_ACCOUNT_EMAIL>

$> export GOOGLE_APPLICATION_CREDENTIALS="./secrets.json"

$> firebase deploy --project <PROJECT_ID>

答案 2 :(得分:1)

您实际上可以使用有权访问Firebase角色的Google帐户(服务帐户或其他帐户)的刷新令牌,并将其设置为Yes/No环境变量。

例如,我使用Cloud Build(其具有已登录到FIREBASE_TOKEN的关联服务帐户),然后将gcloud设置为FIREBASE_TOKEN的输出。