gpt4 book ai didi

firebase - 在 Firestore 中使用集合组查询的 Multi-Tenancy 应用程序的最佳实践是什么?

转载 作者:行者123 更新时间:2023-12-05 05:10:43 26 4
gpt4 key购买 nike

Multi-Tenancy 应用集合组查询的最佳做法是什么?例如查询租户客户的所有发票

/tenant/1/customer/2/invoices

如果我创建一个名为invoices 的收款组索引,并且我想确保我可以获得租户 1 的所有invoices,我该如何轻松地做到这一点?

我尝试设置一些安全规则来防止查询租户,但它仍然抛出访问被拒绝的错误,因为它仍在跨租户查询。正确的 Firestore 规则应该是什么样的

最佳答案

Firebase 项目不太适合 Multi-Tenancy 应用。建议您为每个租户创建不同的项目。 这将为您在未来避免很多问题。

如果您绝对必须在单个项目上使用 Multi-Tenancy ,则您当前的数据库结构不能很好地支持集合组查询。集合组查询始终查询给定名称的每个集合,无一异常(exception)。您不能使用安全规则来过滤结果,因为 rules are not filters .过滤只能来自客户端,并由安全规则确认。使用您当前的结构,您需要将租户的 ID 存储在您打算使用集合组查询查询的每个文档中,并让客户端使用它作为结果的过滤器。

关于firebase - 在 Firestore 中使用集合组查询的 Multi-Tenancy 应用程序的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56410515/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com