如何在Firestore安全规则中获取两个文档

时间:2018-09-06 15:59:58

标签: firebase google-cloud-firestore firebase-security-rules

我正在尝试在Firestore安全规则中引用我的Firestore数据库中的两个不同文档。我必须查找用户朋友拥有的权限配置文件ID,然后从用户集合中获取该权限配置文件并检查其中的字段。 (每个用户数据下的存储权限提供自定义权限)

我受this forum的启发,尝试将一个get语句放入另一个语句:

match /users/{userUID}/posts/{postUID} {
    allow read: if get(/databases/$(database)/documents/users/$(userUID)/permissions/$(get(/databases/$(database)/documents/users/$(userUID)/connections/$(request.auth.uid)).data.permissionProfileUID)).data.posts.canRead;
}

我还尝试将每个get都拉入自己的函数中,但这不起作用,并且使用了多个return语句,上面链接的论坛说不可能发生。

以上所有尝试均失败,没有错误消息。我已经分别尝试了每个get,并且都可以正常工作,但是以任何方式组合都失败了。

我想做到的甚至是可能的吗?

0 个答案:

没有答案