Google cloud firestore Firestore安全规则:比较映射的数组

Google cloud firestore Firestore安全规则:比较映射的数组,google-cloud-firestore,firebase-security,Google Cloud Firestore,Firebase Security,我正在为用户编写安全规则。我希望用户能够只更新个人资料中的某些部分,如国家、城市、街道、姓名和姓氏。 但我想限制他们访问有关他们的最新评论(这是一系列地图)。检查用户是否试图覆盖简单的字段值相当容易,但是否可以以某种方式比较映射数组? 限制用户访问的一种方法是为评论创建一个不同的集合,但我更愿意将其保留在一个地方,以避免额外的阅读。我意识到对firestore来说比较地图数组可能太多了,但我想确定这是否可行 比如: match /users/{userId} { allow update:

我正在为用户编写安全规则。我希望用户能够只更新个人资料中的某些部分,如国家、城市、街道、姓名和姓氏。 但我想限制他们访问有关他们的最新评论(这是一系列地图)。检查用户是否试图覆盖简单的字段值相当容易,但是否可以以某种方式比较映射数组? 限制用户访问的一种方法是为评论创建一个不同的集合,但我更愿意将其保留在一个地方,以避免额外的阅读。我意识到对firestore来说比较地图数组可能太多了,但我想确定这是否可行

比如:

match /users/{userId} {
  allow update: if isAuthorized() && request.resource.data['reviews'] == resource.data['reviews'];}

现在,您必须将所有已知字段相互比较,看看是否有变化。Firebase团队正在研究使这种扩散更容易的方法。嘿@DougStevenson!由于该产品目前允许这样做,您是否介意发布您的评论作为答案,以使其在社区中更具可见性?现在您必须将所有已知字段相互比较,以查看是否有更改。Firebase团队正在研究使这种扩散更容易的方法。嘿@DougStevenson!由于这是该产品目前允许做的事情,您是否介意发布您的评论作为回答,以使其在社区中更具可见性?