【发布时间】:2020-10-02 16:35:27
【问题描述】:
我一直在学习使用 firebase、react 和 redux 构建全栈网站的教程。登录向后端函数发送调用,该函数使用 firebase.auth().signInWithEmailAndPassword 用于登录。IdToken 被传回客户端并存储在本地存储中。然后,身份验证和状态持久性依赖于客户端检查当前日期是否超过了 JWT 令牌的到期时间。对后端云函数的 API 调用也需要使用“Bearer {IdToken}”的授权标头。
这种结构让我很头疼。我做了很多阅读,我目前的理解是,firebase 有它自己的授权持久性(?),我可以直接在我的前端实现。然后使用监听器,我可以在身份验证状态更改时自动获取新的 Id 令牌。这将解决我的令牌每小时到期的问题。从我所读到的令牌的本地存储也是一个安全风险。
我不确定这会如何影响我的函数调用的授权。我应该仍然使用授权标头还是有更优雅的 firebase 方式来做到这一点?
【问题讨论】:
标签: firebase google-cloud-firestore firebase-authentication