【发布时间】:2019-12-08 06:21:09
【问题描述】:
我目前有一个完全运行的前端(Swift、iOS)和后端(node.js)。我现在正在研究应用程序某些部分的实时更新,我决定使用 Firebase,因为它可以让我在以后快速部署并轻松扩展。
但是,由于我已经有一个完整的后端设置,它对用户进行身份验证并发送回一个令牌 (JWT),我想知道如何为 Firebase 使用相同的身份验证。想法是根据用户 ID 在 Firebase 中设置自定义规则,并使用此用户 ID(它只是一个常规 ID,例如我的用户 ID 是 1,而不是 UUID)在实时数据库和 Firestore 中创建集合。
我已经阅读了docs on custom tokens,但我还有一些担忧:
- 我可以在不使用 Firebase 身份验证的情况下使用它来登录用户吗?或者这也会在 Firebase Auth 中创建一个用户?
- 我只能在 JWT 的最大期限内签名。从现在开始 60 分钟,所以一小时。这是否意味着我必须每小时重新进行身份验证?我该怎么办?我当前的应用授予有效期为 21 天的 JWT。
- 我应该为 Firebase 使用与我用于整个应用程序的 JWT 相同的 JWT,还是应该生成一个新的 JWT 并将其也发回,主要目的是在我的 Swift 应用程序中将它用于 Firebase Auth?李>
【问题讨论】:
-
是敏感数据吗?如果是,您需要使用 Firebase 身份验证。如果没有,将规则更改为公开
-
当然。将用于小型的一对一聊天(问题>回答),所以我不希望任何人访问所有记录。那么 Firebase Auth 与我现有的身份验证系统并行吗?
标签: firebase firebase-realtime-database google-cloud-firestore firebase-authentication jwt