具有自定义令牌的身份验证流程,用于云功能上的 Firebase 身份验证
Authentication flow with custom token for Firebase Authentication on cloud functions
我正在创建一个游戏,我想在其中使用使用云功能的 firebase 身份验证来登录和注册用户。由于我的开发平台 (GameMaker Studio 2) 没有 firebase sdk,因此我尝试使用 firebase auth restAPI。要对用户进行身份验证,我必须在某一时刻使用用户 uID 创建一个自定义令牌,然后使用它进行登录。这样做的问题是我无法真正理解身份验证的流程。客户端如何通过电子邮件和密码等参数事先了解其用户 ID?
如果能帮助我理解验证用户身份所需的流程,我们将不胜感激。
如果您在 node.JS 上进行开发,您应该能够使用 npm 安装 firebase 包——这会大大简化事情。
否则,整个身份验证流程应如下所示。
- 客户提供邮箱和密码
- 使用您的 HTTP 请求将电子邮件和密码传递给 Firebase 身份验证。如果身份验证成功,您应该会收到一个身份验证令牌和一个 uID。 (see here)
- 现在您有一个 id 令牌,您可以将其设置为客户端浏览器中的 cookie。您可以通过将此 cookie 存储在您的后端以验证每个对您的节点服务器的后续 GET 请求。
我正在创建一个游戏,我想在其中使用使用云功能的 firebase 身份验证来登录和注册用户。由于我的开发平台 (GameMaker Studio 2) 没有 firebase sdk,因此我尝试使用 firebase auth restAPI。要对用户进行身份验证,我必须在某一时刻使用用户 uID 创建一个自定义令牌,然后使用它进行登录。这样做的问题是我无法真正理解身份验证的流程。客户端如何通过电子邮件和密码等参数事先了解其用户 ID?
如果能帮助我理解验证用户身份所需的流程,我们将不胜感激。
如果您在 node.JS 上进行开发,您应该能够使用 npm 安装 firebase 包——这会大大简化事情。
否则,整个身份验证流程应如下所示。
- 客户提供邮箱和密码
- 使用您的 HTTP 请求将电子邮件和密码传递给 Firebase 身份验证。如果身份验证成功,您应该会收到一个身份验证令牌和一个 uID。 (see here)
- 现在您有一个 id 令牌,您可以将其设置为客户端浏览器中的 cookie。您可以通过将此 cookie 存储在您的后端以验证每个对您的节点服务器的后续 GET 请求。