怎样才能保证react应用中的Firebase API密钥不被公开访问?[重复]

问题描述 投票:0回答:1

我目前有一个React应用程序使用Firebase认证&使用Firestore作为数据库。

我目前使用Amazon的Amplify服务部署了这个应用。我的Firebase API密钥,包括数据库URL和firebase应用Id都被添加为AWS控制台中的环境变量。

当我检查公共捆绑时,我可以看到所有的API密钥都是公开的。

我的问题是。

  • 我的问题是: 这样做对吗?
  • 有没有一个最佳实践来处理这种情况?
  • 我是否需要构建一个后端来处理这种情况?
reactjs firebase security google-cloud-firestore aws-amplify
1个回答
1
投票

你的API密钥、数据库URL、应用ID等都是要公开的。

根据 数据库文档:

这些内容被认为是公开的,包括你的平台特定ID(在Firebase控制台设置工作流中输入)和特定于你的Firebase项目的值,如你的API Key、实时数据库URL和存储桶名称。鉴于此,使用安全规则来保护你的实时数据库、Cloud Firestore和Cloud Storage中的数据和文件。

你的意思是使你与firebase的连接安全的方式是使用 安全规则. 你可以添加自定义规则来确保你的DB是安全的。

例如,你可以添加自定义规则来确保你的数据库是安全的,例如:你可以确保只有userId12345有创建、读取、更新和删除userId12345记录的权限。你可以确保只有userId12345有权为userId12345创建、读取、更新和删除记录。

© www.soinside.com 2019 - 2024. All rights reserved.