【发布时间】:2021-06-21 19:45:05
【问题描述】:
我有一个顶级集合:“组织”,在该集合文档中有一个这样的员工地图:
employees: {
uid1: {
displayName: John Do
[...]
}
uid2 {
[...]
}
}
我还有另一个顶级集合:“客户”,其组织结构图如下:
organizations: {
organizationId1: some string,
organizationId2: some other string,
[...]
}
地点:
- uid 是来自 firebase auth 的用户 ID
- organizationId 是组织文档的文档 ID。
用户可以在多个组织中,客户也可以在多个组织之间共享。
我想保留对客户文档的访问权限,用户是客户文档中列出的至少一个组织的员工。
有没有办法在firestore.rules中循环
我认为答案可能是 mapDiff 和自定义声明。
用户自定义声明:
organizations:[organizationId1, organizationId2, ...]
但我在理解文档时遇到了一些困难: https://firebase.google.com/docs/reference/rules/rules.MapDiff
有没有办法做到这一点?
【问题讨论】:
标签: google-cloud-firestore firebase-security