我正在使用Firebase Admin Python SDK连接到我们的Firebase实例,在该实例中为Web应用程序存储了用户。我正在尝试创建一个每天查询Firebase并获得用户数量的作业,然后将其存档到我们的数据仓库中以对其进行报告。我已经成功created service account credentials,并通过访问Google Cloud Platform确保凭据有效(在these instructions之后):
import firebase_admin
creds = firebase_admin.credentials.Certificate("/Users/me/Downloads/service-account-146c01507e2b.json")
default_app = firebase_admin.initialize_app(creds)
但是,有关如何进行身份验证以撤回list of all users的说明不清楚。它只是说要导入auth
类,然后运行auth.list_users()
,但没有阐明如何使用此类进行身份验证。
运行firebase_admin.auth.list_users()
时出现以下错误:InvalidArgumentError: Error while calling Auth service (INSUFFICIENT_PERMISSION).
有人可以帮助我了解如何使用服务帐户凭据进行身份验证吗?谢谢!
Firebase服务帐户应从以下位置生成:
Firebase控制台>项目设置>服务帐户,然后单击生成新私钥] >>
import json
import firebase_admin
from firebase_admin import credentials
FIREBASE_CERT = "credentials/firebase-adminsdk-####-##########.json"
with open(FIREBASE_CERT) as json_file:
json_data = json.load(json_file)
DEFAULT_CRED = credentials.Certificate(json_data)
app_instance = firebase_admin.initialize_app(DEFAULT_CRED)
firebase_admin.auth.list_users()