![](/img/trans.png)
[英]Firebase Firestore / Realtime DB: allow write to only a specific admin user
[英]Firebase Firestore only allow user to query a collection if there is a filter
我正在尝试创建一个 Firestore 规则,该规则只允许用户列出他们正在过滤字段的集合中的文档。
// would fail: db.collection('documents').get(); // would succeed: db.collection('documents').where('fieldId', '==', 123456).get();
有没有办法通过 Firestore 规则来实现这一点?
我能想到的唯一方法是使用基于查询的规则。
像这样的东西:
allow read: if resource.fieldId.published == 123456;
但我不认为有办法只要求他们过滤fieldId
,无论价值是什么。
有趣的是,这可以通过实时数据库安全规则实现,它有一个单独的query.orderByChild
子句。
我认为这听起来像是一个合理的功能,所以我建议你提交一个功能请求。 它现在或任何附近的功能都对您没有帮助,但是...谁知道呢。
我得到了它的工作
allow list: if int(resource.data.fieldId) > 100000000000000000;
因为所有的 id 都超过 100000000000000000。现在尝试列出一个没有.where('fieldId', '==', someId) 的集合被拒绝。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.