Ano*_*P R 1 rest node.js firebase firebase-authentication firebase-admin
我有一个REST api,使用jwt令牌完成身份验证.为了使api更安全(用户和身份验证机制),我想使用firebase身份验证.我想知道我们可以使用firebase作为我的REST API的身份验证服务器.
我的理解是客户端应用程序将用户名和密码发送到firebase服务器,他们将提供令牌.使用该令牌客户端应用程序将向我们的服务器发送api调用.我需要在我的服务器中集成firebase admin SDK,并使用admin SDK验证令牌以从我的数据库中获取数据.
当我错的时候请纠正我.
此外,我担心如何管理刷新令牌以保持我的应用程序登录.
请帮我以正确的方式集成它,我使用nodejs/expressjs来创建API.
Fra*_*teo 11
我们可以使用firebase作为REST API的身份验证服务器.
是的,这是他们提供的服务之一:https://firebase.google.com/products/auth/
我的理解是客户端应用程序将用户名和密码发送到firebase服务器,他们将提供令牌.
正确.通常的Firebase身份验证完全由客户端完成.
但是,如果您需要特定的身份验证机制,例如LDAP/AD或其他形式的企业恶作剧,那么您需要创建自己的令牌,客户端将使用这些令牌进行身份验证:https://firebase.google.com/文档/认证/管理/创建定制的令牌
使用该令牌客户端应用程序将向我们的服务器发送api调用.
正确.客户端成功登录并检索其ID令牌后,您在服务器端需要验证ID令牌:https://firebase.google.com/docs/auth/admin/verify-id-tokens via middleware.
此外,我担心如何管理刷新令牌以保持我的应用程序登录.
只要客户端使用适当的方法来检索ID令牌,您就不必担心这一点.例如,在Web端,客户端将调用:https://firebase.google.com/docs/reference/js/firebase.User#getIdToken,其中说明(强调我的):
如果当前令牌尚未过期,则返回当前令牌,否则将刷新令牌并返回新令牌.
如您所见,客户端Firebase SDK可以为您处理所有事情.服务器端不需要跟踪ID令牌,刷新令牌或其他任何内容.您需要做的就是验证令牌,就是这样.
有关服务器端验证的更多详细信息,请参阅我之前的答案:使用NodeJS进行Firebase身份验证
| 归档时间: |
|
| 查看次数: |
1758 次 |
| 最近记录: |