gpt4 book ai didi

php - 来自服务器端 Firebase + PHP 的电话身份验证验证

转载 作者:行者123 更新时间:2023-12-03 21:20:07 25 4
gpt4 key购买 nike

我正在创建一个自定义用户管理系统,涉及应用程序服务器上的所有应用程序数据,但电话应通过 firebase 进行身份验证。当新用户在系统上注册时,会进行 Firebase 电话身份验证。成功从 firebase 进行身份验证后,注册数据将通过 API 发送到服务器。现在的问题是,如何检查服务器端电话号码是否已通过 firebase 身份验证?如果我在没有服务器端 Firebase 身份验证验证的情况下允许注册,则 API 请求可能会被某人欺骗。我目前正在使用 kreait/firebase-php ^4.18适用于 PHP 的 Firebase SDK。
我现在使用的流程演示如下 Currunt Flow of Registration我想要实现的流程也可以作为,
Proposed Solution to Secure the Registration flow.

2019 年 9 月 25 日更新

图书馆Kreait\Firebase帮助实现了@jeromegamez 在接受的答案中给出的流程,但是,Kreait\Firebase不支持idToken ios设备验证。
IOS 设备有 google idToken 而不是 Firebase IdToken,因此 Kreait\Firebase未能验证它。简要问题在 Firebase IOS idToken invalid kid Exception in the backend while verifyIdToken in Gmail Auth 中给出邮政。

最佳答案

Firebase Rest API 具有 method for that .

在设备上,当用户通过身份验证并且您拥有 User 对象后,要获取 token 进行验证,您可以调用

  • 使用 Android - getIdToken()
  • 使用 iOS
  • swift - getIDToken()
  • Objective-C - -getIDTokenWithCompletion:
  • 使用 JS(网络或其他平台)- getIdToken()
  • 使用 React Native - getIdToken()
  • 以及文档中的其他平台

  • 然后,使用该临时 ID token ,您可以发送 a POST requesthttps://identitytoolkit.googleapis.com/v1/accounts:lookup?key=[API_KEY] ( API_KEY 是 Firebase 项目的“Web API key ”)以获取用户信息,其中将包括 phoneNumber token 的所有者。

    因此,您可以在服务器端验证 token 的所有者是否具有该特定电话号码。

    关于php - 来自服务器端 Firebase + PHP 的电话身份验证验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55121166/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com