Firebase和Expo部署Expo App隐藏键

问题描述

我看到这个问题已经被问到了,但是最近还没问完,所以我再次提出。

如何在博览会应用程序中隐藏firebaseConfig文件或任何秘密密钥? (用于生产,而不是开发人员。)

据我所知,在本机expo应用程序中无法用API密钥等正确隐藏firebase配置文件

由于我已经围绕与Firestore的交互构建了整个应用程序,因此我对如何继续前进感到困惑。

如果我弹出,是否有办法在非Expostic-native-app中正确隐藏我的API密钥?还是我还会面临同样的问题?一切运行顺利,我希望不要弹出。

我有一些使用node.js / express.js作为后端的经验(仅在开发环境中使用过)。我应该自己构建一台服务器,然后从那里提供配置信息吗?

如果我要部署“演示”应用程序,是否可以在仍使用expo的同时隐藏密钥?

任何对此的了解都将很有帮助。

据我所知,没有与expo兼容的“ dotenv”软件包。

我在部署移动应用程序方面的经验也为零,而在部署Web应用程序方面的经验则很少。我还没有处理保护部署中的密钥的问题。

任何帮助将不胜感激。

解决方法

不可能有效地隐藏您的Firebase配置信息。您能做的最好的事情就是使别人很难找到他们。由于所有JavaScript代码都在您无法控制的计算机或设备上运行,因此您无法确保其中的任何一个都不可见。

实际上,您不需要隐藏任何一个。我建议阅读:Is it safe to expose Firebase apiKey to the public?

如果您使用的是实时数据库,Firestore或云存储,则应该使用安全规则来保护数据,以便只有授权用户才能访问它。