扩展 Firebase 用户

Posted

技术标签:

【中文标题】扩展 Firebase 用户【英文标题】:Extending Firebase Users 【发布时间】:2019-03-17 17:23:38 【问题描述】:

我目前正在构建一个多平台 Web 应用程序,目前正忙于用户身份验证。我在客户端使用 vue,在 django 和后端使用 postgres 作为数据库。

我想我会尝试使用 firebase 的身份验证,因为它可以加快流程并解决安全等各种问题。我现在遇到了一个问题:

    我需要为用户添加额外的字段(性别、地址等) 我需要设置用户角色(管理员、经理等)

我知道某种设置用户角色的方法,但不太确定。关于扩展我心中的用户,我有两个想法:

要么我使用来自 firebase 的 UID 作为扩展用户类的标识符 在我的后端数据库中。但这有点违背了速度的目的。 使用 Firestore - 不过我不知道该怎么做。

请帮忙

【问题讨论】:

【参考方案1】:

我写了一封blog 并写了一封video,介绍了如何使用自定义声明为您的用户分配角色。本质上,您在 Cloud Functions 内部等安全后端应用自定义声明,这些声明可用于控制对 Cloud Firestore 和实时数据库等 Firebase 后端功能的访问。您也可以查看Firebase guide 了解更多信息。

关于性别和地址等用户的其他数据,应存储在 Cloud Firestore、实时数据库或您选择使用的任何数据库中。这不是您在访问 User 对象时经常需要的信息。

【讨论】:

非常感谢仁!我今天将查看您的博客和视频。最后一个问题虽然你已经回答了我。我可以用我的本地数据库连接/扩展我的用户模型,在这种情况下是我的后端 postgresql 数据库吗? 编辑 没关系,我刚刚阅读了您的博客,它完美地解释了一切。非常感谢。

以上是关于扩展 Firebase 用户的主要内容,如果未能解决你的问题,请参考以下文章

使用带有条纹 Firebase 扩展的运行付款时,条纹产品元数据未返回到 Firebase 的经过身份验证的用户实例

将 Firebase 登录信息转移到今天的扩展程序

从 firebase 检索数据并将其显示在可扩展的 recyclerview 中

将 google firebase 分析与 iOS 操作扩展一起使用

将所有数据从Firebase数据库导入Mailchimp

Firebase 扩展:使用 Stripe 运行订阅付款不会返回 sessionId