python - 使用 Firebase 创建桌面 Python 应用程序,如何包含私钥?
问题描述
我正在尝试构建一个使用 python 和 pyqt5 构建的桌面应用程序。我想用他们自己的登录详细信息将其发送给用户,但我不完全确定如何处理私钥。到现在为止,我不得不做
export GOOGLE_APPLICATION_CREDENTIALS=[path to private key json]
或用于窗户
set GOOGLE_APPLICATION_CREDENTIALS=[path to private key json]
显然我不想泄露私钥。是否可以将其存储在程序中,或者是否有特殊的安全方法可以做到这一点?我正在使用 pyinstaller 打包所有内容。
解决方案
Firebase 提供的唯一可与 Python 一起使用的 SDK 是所谓的 Admin SDK。正如[设置管理 SDK] 上的文档所述:
Admin SDK 可让您在特权环境中与 Firebase 交互
因此,此 SDK 不适合为您的普通用户开发应用程序,因为它需要的凭据授予用户对您的 Firebase 项目的完全管理权限。
没有用于为常规客户端开发 Python 应用程序的官方 Firebase SDK,因此您的选择仅限于:
- 为各种 Firebase 服务使用 REST API,并针对它编写您自己的客户端 Python 代码。
- 使用支持客户端和管理访问的第三方 API,例如Pyrebase 。
推荐阅读
- mongodb - 在 Quasar / VueJS 中连接到 MongoDB
- css - css覆盖禁用文本选择
- html - Crisp 不断抛出错误“BoundWidget”对象没有属性“字段”
- c - 子进程改变内存图像
- reactjs - Webpack 在 React 图像导入时抛出错误
- mongodb - MongoDB聚合管道:如何将字符串与数组内的日期进行比较
- python - 以浮点数组的形式获取音频频率和幅度
- python-3.x - 为什么我不能更换新的行分隔符?
- c++ - c++ 中是否有与 glibc mtrace() 函数类似的函数?
- php - 如何在foreach循环php上显示单个结果