首页 > 解决方案 > 如何防止 Firestore 文档被删除/修改,但允许所有读取和写入

问题描述

我有一个将数据存储在 Firestore 上的 ios 应用程序,我几乎可以接受任何读取或写入数据的人。我不想允许的是修改或删除数据。如何在不使用身份验证的情况下将其写入我的安全规则?基本上,我收到警告,“您的安全规则被定义为公开的,因此任何人都可以窃取、修改或删除您数据库中的数据。” 凌驾于我的规则之上。谢谢!我目前的规则根本不具体,只是说“允许读,写;”。

标签: firebasegoogle-cloud-firestorefirebase-security

解决方案


为避免该消息,您应该做两件事:

  1. 删除匹配所有文档的递归通配符模式“/{document=**}”,而是调用每个单独的集合来分配特定的权限。
  2. 如文档中所述,更改您想要允许的细化权限类型
match /collection1/{id} {
  allow read, create;
}

对每个集合重复此操作。

我强烈建议您彻底阅读文档以了解规则的工作原理,因为它们是许多应用程序的最大责任。


推荐阅读