如何创建一个管理员来管理两个具有共享数据库的独立 Firebase 项目的用户

How create an Admin to manage users on two independent Firebase projects with a shared DB

问题

我有两个独立的应用程序,一个共享数据库的“经理”应用程序和一个“员工”应用程序,我正在使用 Firebase 进行身份验证。目前我在 Firebase 中有两个不同的项目,每种用户类型一个。我现在正在尝试开发第三个“管理员”应用程序,允许组织指定的人管理“员工”和“经理”应用程序上的用户。我已经研究过使用自定义声明,但为了使其在两个应用程序中都能正常工作,必须在同一个 Firebase 项目中。

可能的解决方案

  1. 将所有用户迁移到同一个 Firebase 项目
    在这种情况下,我将所有用户迁移到一个 Firebase 项目并为每个用户分配一个类型。登录后,我会检查它们是否属于该应用程序的正确类型,如果不正确则将它们注销——这有点老套但可行

  2. 切换授权提供商
    显然,如果可能的话,我想避免的最乏味和最昂贵的选择

谁能帮我找出最好的方法?

由于所有三个应用程序似乎都在同一个域中运行,因此最常见的做法是将它们设置在一个项目中并使用自定义声明、安全规则或两者的组合来控制各种应用程序的访问用户类型。