dsh*_*tjr 10 javascript firebase google-cloud-firestore firebase-security-rules
我正在使用Firebase Cloud Firestore,我想修改我的规则以限制用户查询集合.
这不应该被允许:
firestore().collection("users").get()
Run Code Online (Sandbox Code Playgroud)
但是应该允许这样做:
firestore().collection("users").doc("someUserId").get()
Run Code Online (Sandbox Code Playgroud)
目前,我的规则如下:
match /users/{userId} {
allow read;
}
Run Code Online (Sandbox Code Playgroud)
但是此规则允许查询"用户"集合.
如何允许单个文档获取,但不允许收集查询?
Jua*_*ara 14
您可以将读取规则分解为get和list.获取规则适用于单个文档的请求,列表规则适用于查询和集合请求(docs).
match /users/{userId} {
//signed in users can get individual documents
allow get: if request.auth.uid != null;
//no one can query the collection
allow list: if false;
}
Run Code Online (Sandbox Code Playgroud)