我可以在 firebase firestore 中获取过滤查询吗

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

我想问Firestore中是否可以根据文档的字段访问规则获取过滤数据。

我有一个例子:

 firebaseObj = {
   name:'john',
   private:{
    pass:123
   }
 }

 service cloud.firestore {
  match /databases/{database}/users/{$uid} {
    allow read : if true,
    match /private/pass {
          allow read, delete, update: if request.auth.uid == uid
    }
  }
 }

当我尝试获取未在该帐户上进行身份验证的 firebaseObj 时,将至少检索名称,否则我将收到错误?

其实我还没有尝试过。

firebase google-cloud-firestore firebase-security
1个回答
0
投票

Firestore 安全规则中的路径适用于文档的路径,而不适用于文档本身内的数据。

Firestore 中的操作读取或写入整个文档,而不是文档的一部分。

另请注意,Firestore 安全规则不是过滤器。这些规则将应用于传入的query,以查看它是否与这些规则匹配。它们不适用于传出结果集。如果您的规则允许执行查询,则该查询中的所有数据都会返回给客户端。您设置规则以确保传入的查询具有正确的过滤器参数。

可以在 Firestore Security Rules Cookbook

中查看现有安全规则“模式”的良好来源
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.