android - 任何人都可以获取我的数据库引用并在 firebase 数据库中对其进行编辑吗

标签 android firebase-realtime-database firebase-security

我在我的 android 应用程序中使用 firebase 数据库。我发现来自 firebase 控制台的警告说为我的数据库制定写入和读取规则是不安全的。我想知道是否有人可以通过以某种方式获取对数据库的引用来访问应用程序外部数据库中的我的数据,因为在应用程序中,用户无法编辑我不允许他们编辑的任何内容,因此将设置规则是真实的对我来说是否危险?如果是,那么为什么它既危险又不安全?在我的应用程序中,我允许用户发帖,所以我如何允许应用程序中的所有用户使用安全规则在应用程序中发帖?

最佳答案

如果您的安全规则设置不当,世界上任何人都可以读写您的数据库,无论您的应用在内部做什么。有两件事你应该知道:

首先,当客户端应用程序直接访问数据库时,完全控制对数据库的访问的唯一方法是通过安全规则。您应该期望任何人都能够在没有您的客户端应用程序的情况下尝试读取和写入您的数据库,也许是通过 REST API。所有人只需要知道您的 Firebase 项目的名称,该名称已嵌入到您的应用中并且很容易看到。

其次,您应该预料到您的客户端应用程序可以被逆向工程和更改。用户手中的代码本身并不安全。尝试仅使用应用程序中的代码来保护对数据库的访问并不是一个好主意。

关于android - 任何人都可以获取我的数据库引用并在 firebase 数据库中对其进行编辑吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52881453/

相关文章:

javascript - 如何获取Firebase存储下载url的值并将其存储在firebase存储中....,

android - 如何在 Firebase 中添加数组值

javascript - 在交易中访问新文档时,Firestore 安全规则?

javascript - 针对用户匿名登录的 Firebase 规则

firebase - 包含数组的查询的 Firestore 安全规则

Android:自定义水平进度条动画

android - 如何在android中压缩视频文件

firebase - 我如何在 flutter 中从 Firebase 实时数据库中检索数据

android - Android类库项目中的自定义组件

java - 从我的应用程序类打开 Google Play 商店