Firebase 规则安全警告



我在Firebase中收到以下消息:

项目的云还原"(默认("数据库包含 不安全的规则。

但是我有文档所说的规则,我没有看到任何其他选择。我想要的是任何人都可以阅读,但只是登录的用户可以编辑内容。

这些是我的规则:

service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read: if true;
allow read, write: if request.auth.uid != null;
}
}
}

使用这些规则,任何身份验证用户都可以写入数据库中的所有文档,包括覆盖其他人创建的文档。您还允许每个人(无论他们是否经过身份验证(读取数据库中的所有数据,这似乎比大多数应用程序所需的要广泛得多。虽然这些规则接近你可以开始使用的一些默认规则,但对于生产应用来说,这通常是不够的,这就是你收到警告的原因。

通常需要进一步锁定对数据库的访问。例如,您可能希望确保用户只能在特定字段中编写包含其自己的 UID 的文档。这样,您将始终知道谁创建了文档,并可以使用它来控制对该文档的访问。

如果您确定这是应用正常运行所需的最低数据访问权限,则可以在 Firebase 控制台中停用警告电子邮件。但如前所述,根据我的经验,这种类型的访问似乎比我通常在运行良好且受到良好保护的应用程序中看到的要广泛得多。

最新更新