了解Firebase Firestore规则

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

我想设置我的Firebase Rulse。我要根据他们所在的地区和我的District注册到我的firestore数据库中的用户。因此,当用户要注册但该用户未登录应用程序时,我要设置我的规则,例如任何人都可以阅读District集合,而其他集合必须是身份验证

所以我设置了这样的规则是正确的吗?

rules_version = '2';
  service cloud.firestore {
    match /databases/{database}/documents {
       match /{document=**} {
         allow read, write: if request.auth.uid != null;
        }
       match /District/{document=**}  {
          allow read :if true;
      }
    }
  }
google-cloud-firestore firebase-security-rules
1个回答
0
投票
虽然三件事:

首先,您应该熟悉规则控制台的模拟功能。它使您可以手动直接测试特定方案,以探索规则中正在发生的事情。

第二,Firebase提供了一种使用仿真器写入tests for security rules的方法。这是一种很好的做法,可确保您拥有一套全面的测试,随着应用程序复杂性的增加,这些测试可重复进行。

最后,请注意,即使有了这套规则,您也已经为任何经过身份验证的用户提供了数据库的全部权限-他们可以无限制地从字面上读取或写入任何数据。例如,这将包括删除整个/ District集合。这对于您的用例可能是可接受的,也可能是不可接受的,但是您应该非常仔细地考虑选择。请记住,公共用户仅在遵守安全规则授予的权限的情况下,才能对您的数据库运行任意代码。

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