有人知道我是否可以创建嵌套的“获取”规则来访问数据库中的不同数据吗?又如何?
// Assignment's document
match /assignments/{assignmentId} {
function getAssignmentOwner(){
return get(/databases/$(database)/documents/assignments/$(assignmentId)).data.owner;
}
function getAgencySupervisors(){
return get(/databases/$(database)/documents/agencies/$(getAssignmentOwner())).data.supervisors;
}
allow write: if request.auth.uid in getAgencySupervisors();
allow read: if request.auth != null;
}
当前它返回“不允许”。
答案 0 :(得分:0)
规则不是数据过滤器;您应该仅对集合,文档或子集合使用规则,而不能对文档内部的结果进行过滤。
文档:https://firebase.google.com/docs/firestore/security/rules-structure