【发布时间】:2018-03-28 09:56:44
【问题描述】:
关于基于子集合值查询数据的实际限制,在 Firestore 中管理多租户的建议方法是什么?
我希望能够检索并限制对与用户所属的实体/公司相关的数据的访问。
示例数据结构:
/companies/{companyId}/users/
/companies/{companyId}/users/{user}/roles
/companies/{companyId}/docs/
/companies/{companyId}/users/ 可以收藏吗?
如何仅检索用户在/companies/{companyId}/users 中拥有角色的公司?
【问题讨论】:
-
通常建议为不同的环境使用单独的项目,而不是将它们全部放在一个项目中。如果您这样做,您将对每个 Firebase 产品进行更好的隔离和访问控制。
-
@DougStevenson 请告诉我,现在情况已经改变了。这是一种可怕的多租户方式,尤其是因为似乎没有用于实际创建新项目的 API。
-
@DennisKrøger 什么都没有改变,也不可能改变。这一直是 Firebase 团队的建议。
-
@DougStevenson 这(以及缺少用户邀请功能)是促使我们改用 AWS 的主要问题。他们的多租户仍然不是很好,但至少在新客户/租户自己注册时是可行的。如果我们要使用推荐的 Firebase 方法,在没有项目创建 API 的情况下,我们必须有人手动添加租户。不会发生。真可惜,因为几乎所有其他东西似乎都与我们的用例完美匹配。
标签: firebase google-cloud-platform google-cloud-firestore