我的收藏名称为“ omgcollection”,示例文档如下:
{
"omgcollection": {
"documentId1": {
"somekey": "somevalue"
},
"documentId2": {
"somekey": "somevalue"
}
}
}
这里我使用uid作为documentId,如何基于$(request.auth.uid)提供对文档的只读访问权限
以下规则不起作用
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read: if exists(/databases/$(database)/documents/omgcollection/$(request.auth.uid));
}
}
}
这是我的代码:
//customToken ~ uid = documentId1
firebase.auth().signInWithCustomToken( < customToken > ).catch(function(error) {
console.log('auth error :', JSON.stringify(error));
});
var db = firebase.firestore();
db.collection("omgcollection").doc("documentId1")
.onSnapshot(function(doc) {
console.log("data: ", doc.data());
}, error => {
console.log(error)
});
此代码返回FirebaseError:缺少权限或权限不足。