【发布时间】:2019-06-06 14:32:35
【问题描述】:
我正在考虑使用 Firebase 和 Firestore 创建多租户应用。租户的数量会很少(最初大约 6 个),最终用户不会在应用程序上创建自己的实例,而是由管理员严格控制。
我的理想情况是只有一个应用程序,我可以将多个域附加到,并将请求路由到特定数据库以实现它们。
我有几个担忧:
我在文档中阅读了我可以为每个应用创建多个数据库,但在我的管理面板中看不到选项,所以我不确定文档目前是否不正确(或者它是否指的是 Realtime DB )。
我不希望注册的用户注册到所有租户,并且考虑到 Firebase 身份验证的工作方式,我看不到任何可以指定用户注册到哪个域的方法。我曾想过在一个跟踪用户所属域的集合中管理它,并假装它看起来使用户处于孤立状态,但是如果用户在“两个”租户中注册,并想更改他们的登录名凭据,这将在整个网络中更改它们,并且可能会令人困惑。
所以这听起来不像我想要的那样干净,这将指向选项 2:
拥有一个前端应用程序,该应用程序引用了它可以连接的所有 Firebase 应用程序,并联系不同应用程序的后端以保持数据和用户身份验证的分离。这将解决孤立的用户问题,但随后我将在后端维护几个不同的应用程序,制作该产品的新版本的全部目的是避免维护多个相似但略有不同的代码库。 那个问题的解决方案是从相同的代码仓库部署到 firebase 上的不同应用程序:CLI 是否允许我每次都选择我的部署目标?
我想选项 3 是让一个无头 React 应用程序联系节点服务器或其他东西,但是我会失去所有酷的 Firebase 优点,我真的在挖掘 Firebase。
这是一个可以解决的问题吗?还是我想把方钉塞进圆孔?
谢谢!
【问题讨论】:
标签: firebase google-cloud-firestore