【问题标题】:How to only do a SMS verification for email/password account in firebase?如何仅对 Firebase 中的电子邮件/密码帐户进行短信验证?
【发布时间】:2018-06-30 07:55:44
【问题描述】:

我已经让firebase.auth().signInWithPhoneNumber(number, appVerifier) 工作得很好,但我意识到了一些我以前没有意识到的事情。一旦您输入短信验证码,它就会在电话身份验证下创建一个完整的其他用户,这就是为什么。

然而,我想做的只是让我当前的电子邮件/密码用户添加一个电话号码,然后在他们登录之前必须经历一个获取验证短信代码并将其输入的过程,然后才能通过成功阻止登录该用户。

我目前的解决方案是将电话号码添加到电子邮件/密码帐户。完成电话身份验证过程,如果成功注销电话身份验证帐户,然后使用相同的电话号码登录电子邮件/密码帐户。然而,从长远来看,这听起来是个坏主意,那么在 firebase 中是否有没有身份验证的短信验证?

【问题讨论】:

    标签: firebase firebase-authentication


    【解决方案1】:

    您可以做的是使用 User 的 linkWithPhoneNumber 方法将您的电子邮件/密码用户与电话号码凭据相关联。 在此处查看文档:https://firebase.google.com/docs/auth/web/phone-auth 链接到电话号码凭据需要用户使用 SMS 代码验证他们的电话号码。

    【讨论】:

    • 我实际上做了updatePhoneNumber,然后做了signInWithPhoneNumber,它似乎将它们链接在一起而没有创建另一个phone number帐户。因此,在提供商中,它显示一个电话图标和一个电子邮件图标,而不是两个单独的帐户,一个电话和一个电子邮件。不知道为什么它有效,但它确实大声笑
    【解决方案2】:

    那个案子听起来确实是个坏主意。

    很遗憾,Firebase 尚不提供没有电话身份验证的短信验证。你必须寻找一种不同的方法来做到这一点。

    【讨论】:

    • 我可以使用我提出的解决方案,但这意味着每次都要为电话和电子邮件创建一个帐户。我不想使用 twilio。
    猜你喜欢
    • 2017-02-23
    • 2021-11-21
    • 2018-05-31
    • 1970-01-01
    • 1970-01-01
    • 2016-12-15
    • 2020-10-19
    • 2020-09-13
    • 1970-01-01
    相关资源
    最近更新 更多