首页 > 解决方案 > 使用 Firebase 创建桌面 Python 应用程序,如何包含私钥?

问题描述

我正在尝试构建一个使用 python 和 pyqt5 构建的桌面应用程序。我想用他们自己的登录详细信息将其发送给用户,但我不完全确定如何处理私钥。到现在为止,我不得不做

export GOOGLE_APPLICATION_CREDENTIALS=[path to private key json]

或用于窗户

set GOOGLE_APPLICATION_CREDENTIALS=[path to private key json]

显然我不想泄露私钥。是否可以将其存储在程序中,或者是否有特殊的安全方法可以做到这一点?我正在使用 pyinstaller 打包所有内容。

标签: pythonfirebasedesktop

解决方案


Firebase 提供的唯一可与 Python 一起使用的 SDK 是所谓的 Admin SDK。正如[设置管理 SDK] 上的文档所述:

Admin SDK 可让您在特权环境中与 Firebase 交互

因此,此 SDK 不适合为您的普通用户开发应用程序,因为它需要的凭据授予用户对您的 Firebase 项目的完全管理权限。

没有用于为常规客户端开发 Python 应用程序的官方 Firebase SDK,因此您的选择仅限于:

  • 为各种 Firebase 服务使用 REST API,并针对它编写您自己的客户端 Python 代码。
  • 使用支持客户端和管理访问的第三方 API,例如Pyrebase 。

推荐阅读