Firebase电子邮件和密码验证 - 访问用户密码

时间:2015-11-10 10:21:18

标签: authentication ember.js firebase firebase-security

我们正在建立一个员工敬业度调查平台,其中Ember JS和Firebase作为后端。

我们正在使用Firebase的电子邮件和密码身份验证来存储我们的用户'密码。我们不会将密码存储在我们的火力库中。

应用程序流程如下:

  1. 管理员创建调查并添加问题
  2. 管理员将用户添加到调查中(包括姓名,电子邮件和密码)
  3. 管理员向用户发送电子邮件
  4. 用户登录并回复调查
  5. 从上面的工作流程可以看出,我们需要的一个功能是"电子邮件管理器"根据他们的调查状态向用户发送电子邮件(例如:"调查未开始","调查部分完成"等等)

    在我们发送的电子邮件中,我们需要发送用户的登录凭据(即电子邮件和密码)以使其能够登录。示例电子邮件如下所示:

    "

    请使用以下访问详细信息通过此URL - www.voiceupsurvey.com登录您的调查:

    电子邮件:bobtony@yourcompany.com

    密码:XA3kdt3

    "

    您对我们如何做到这一点有什么建议吗?

    具体来说,我不确定如何从Firebase身份验证商店查询用户密码。

2 个答案:

答案 0 :(得分:6)

Firebase不会存储用户的密码,这会带来巨大的安全风险。

相反,您可以执行的操作是向用户发送密码重置电子邮件。此电子邮件将包含一个链接,他们可以单击该链接重置密码。

您的申请流程将是:

  1. 管理员创建调查并添加问题
  2. 管理员将用户添加到调查中(包括姓名,电子邮件和随机密码)
  3. 管理员向用户发送密码重置电子邮件
  4. 用户登录并回复调查
  5. 请注意,步骤2中的密码永远不会被使用,因此请将其设置为长且不可取,以便再次降低安全风险。

答案 1 :(得分:4)

首先 - 您无法从Firebase查询用户密码。

第二 - 将用户添加到仅有名称&amp ;;的调查中听起来更好。邮件,甚至只邮件,让用户登录/注册。

如果管理员将同一用户添加到多个调查中会发生什么?

您可以使用另一个密码来输入特定调查,但该密码应位于不同的位置,而不是与用户身份验证详细信息相关联。

如果您不想让任何用户登录,您可以在电子邮件中提供一些带有链接的令牌,以验证用户是否可以注册。