我可以打破规则并在客户端使用 firebase-admin 吗?或者试图解决错误是徒劳的?

Jam*_*mie 2 javascript firebase firebase-admin

想为我的 Firebase 项目创建一个系统管理页面,有什么办法可以打破规则并在客户端浏览器上使用 firebase-admin SDK?

我遇到的第一个问题是在使用 admin initializeApp 函数成功初始化后使用 firebase/database SDK,我收到错误“TypeError: rtdb.initStandalone is not a function”。我应该继续尝试解决这个问题,还是换个角度来解决。理想情况下,我不想使用对服务器的调用,或者使用具有“超级用户”权限的 firebase auth。

Chr*_*ert 5

Firebase Admin SDK 应仅在特权环境中运行,例如您的服务器或Firebase Cloud Functions。它提供在客户端上不安全的直接管理访问。

Admin SDK 可让您在特权环境中与 Firebase 交互以执行以下操作:

  • 以完全管理员权限读取和写入实时数据库数据。
  • 使用 FCM 服务器协议的简单替代方法以编程方式发送 Firebase Cloud Messaging 消息。
  • 生成并验证 Firebase 身份验证令牌。
  • 访问 Google Cloud Platform 资源,例如与您的 Firebase 项目关联的 Cloud Storage 存储分区和 Firestore 数据库。
  • 创建您自己的简化管理控制台来执行诸如查找用户数据或更改用户的电子邮件地址以进行身份​​验证等操作。

如果您有兴趣使用 Node.js SDK 作为终端用户访问的客户端(例如,在 Node.js 桌面或 IoT 应用程序中),而不是从特权环境(如服务器)进行管理员访问,您应该按照设置客户端 JavaScript SDK说明进行操作