【问题标题】:Building two (Client/Admin) apps on one firebase authentication在一个 Firebase 身份验证上构建两个(客户端/管理员)应用程序
【发布时间】:2019-03-11 20:09:11
【问题描述】:

我们有两个应用程序,一个用于客户端,一个用于管理员(类似于 Uber 的用户和司机应用程序)。在这两个应用程序中,当用户尝试进行身份验证时,云功能会触发一个新用户创建,并将用户集合中的文档保存在云 Firestore 中,其中包含一些数据,如电话号码、电子邮件等。我们遇到了一个问题,当用户或“驱动程序”注册,保存在云Firestore中的数据模型具有不同的字段并且它们彼此不同。

新用户注册时,如何在云功能中触发识别是来自“用户”还是“驱动”应用?

【问题讨论】:

    标签: firebase firebase-authentication google-cloud-functions


    【解决方案1】:

    Cloud Functions 身份验证触发器中不会有任何内容告诉您哪个应用注册了新用户。在 Firebase 项目中,所有用户帐户都在所有应用之间有效共享,并且所有用户在这些应用之间将拥有相同的权限。

    如果用户根据他们用于注册的应用程序划分为不同的类别,您将不得不自己创建这种区别,也许通过您写入数据库的内容。如果从安全角度来看这是不可接受的,您应该使用两个不同的项目来将所有内容分开。

    【讨论】:

    • 谢谢道格!我该如何去创造这种区别?有什么建议吗?
    • 你需要自己想出那个。为它们分配唯一值,随心所欲。
    • Firebase 身份验证不提供在注册期间分配唯一值的方法。可以举个例子吗?
    • 您将不得不在 Firebase 身份验证提供之外做一些事情。您的选择几乎是无限的。选择最适合您的数据模型的东西。
    • 通常开发人员将值写入云托管数据库。这里想到了 Cloud Firestore 和 Firebase 实时数据库,但正如 Doug 所说,如果您更喜欢看其他地方,还有很多选择。
    猜你喜欢
    • 1970-01-01
    • 2018-12-05
    • 2016-12-19
    • 2018-06-21
    • 1970-01-01
    • 2013-07-10
    • 1970-01-01
    • 1970-01-01
    • 2016-10-22
    相关资源
    最近更新 更多