为什么 Google Firebase 不推荐 Google - 在他们自己的文档中 - 用于 multi-tenant 应用程序?

Why is Google Firebase not recommended by Google - in their own documentation - for multi-tenant applications?

Firebase 最佳实践文档中有一条警告,禁止将 Firebase 与 multi-tenant 应用程序一起使用:https://firebase.google.com/docs/projects/learn-more#multi-tenancy

这是我最担心的:“Multi-tenancy 可能导致严重的配置和数据隐私问题,包括分析聚合、共享身份验证、overly-complex 数据库结构和安全规则方面的困难。

还有大量官方 Google 文档支持在 multi-tenancy 中使用 Firebase,例如:https://cloud.google.com/identity-platform/docs/multi-tenancy-authentication .

你知道他们为什么会有这些相互矛盾的建议和例子吗? Google Identity Platform 的使用是否修复了警告中提到的核心安全缺陷?

我是re-posting这个问题,在标题中有额外的说明,还有body中的一些edits/removals,说明我只是在寻找为什么这个被广泛使用产品在其官方文档中有此特殊警告。我已经删除了大部分主观内容。我对此没有与问题相关的意见 - 我只是想了解警告。好像在上一个问题结束之前有一个很好的答案,所以我link这里供参考:

如果您管理 2 个彼此没有关系的独立应用程序,那确实有意义。假设您有一个管理学校信息的应用程序,另一个是餐厅管理应用程序。现在在这种情况下,我没有看到学校应用程序可能需要访问餐厅数据的任何事件。

如果您使用同一个项目,那么所有 firebase 服务(身份验证、数据库、分析等)将在它们之间共享。您很难将每个应用程序的分析分开。由于数据库是共享的,因此您必须通过分隔 db 中的路径来显式分隔两个应用程序的数据。 (学校 /apps/school,餐厅 /apps/restaurant)。

也就是说,任何在学校应用程序上注册的用户都可以登录餐厅应用程序,而无需在那里创建新帐户,因为您正在与他们共享同一个项目。

现在,如果您的客户每月向您支付 Firebase 费用,您无法区分学校客户应该支付多少。现在即使这两个应用程序都是您的,如果您继续使用它,复杂性也会大大增加。

https://firebase.google.com/docs/projects/learn-more#multi-tenancy <-- this explains how "Firebase Projects" works and https://cloud.google.com/identity-platform/docs/multi-tenancy-authentication 解释“Google Identity Kit”多租户身份验证。所以这不是 Firebase 独有的东西。