仅使用 Firebase 在 Postgres 堆栈中进行身份验证

Kev*_*vvv 4 authentication postgresql firebase reactjs firebase-authentication

我目前正在使用 React Native (Expo)、GraphQL、Node 和 Postgres 堆栈,并且使用 JWT 设置了简单的电子邮件和密码身份验证。我想通过允许多个身份链接到单个用户帐户来分离用户身份和用户帐户的概念。换句话说,我想实现Google、Facebook、Twitter OAuth,以便用户登录同一帐户。

仅使用 Firebase 进行身份验证有意义吗?这意味着我基本上将拥有两个用户数据库,一个用于 Firebase 中的身份验证,另一个用于 Postgres 中的任何其他操作,例如发布、购买、评论等。

Fra*_*len 5

您所描绘的场景意味着您正在使用 Firebase 进行身份验证,然后在此基础上实现您自己的授权系统。这是完全可行的,甚至是相当普遍的。

您需要做的是验证 ID 令牌,以便您可以确定用户就是他们声称的身份。然后,您可以使用该令牌中的信息在您自己的数据库中查找其他信息授权访问该系统中的数据。

当然,令牌和授权的验证需要在后端/可信系统中进行,因为在客户端,它们很容易被用户欺骗。与 Firebase 的服务器端安全规则和 Cloud Functions 类似,您需要自己的可信环境,在其中检查授权,然后公开数据。