gpt4 book ai didi

authentication - 使用 Firebase 进行服务器端身份验证

转载 作者:行者123 更新时间:2023-12-04 20:32:55 25 4
gpt4 key购买 nike

我在客户端设置了 Firebase 身份验证,在服务器端我可以获取 JWT token 并解码帐户 ID。但是,当我希望在生成页面之前在服务器上对每个页面加载进行身份验证时,这是如何工作的?

在登录或每个页面加载时,我是否可以简单地将最后一个 JWT token 存储到 cookie 中,以便我可以在我的服务器上读取它们?除此之外,除了每个链接都是 AJAX 调用之外,我不知道我的服务器还能如何获取该信息。

最佳答案

假设您使用 firebase auth 库来解码和验证服务器上的 token ,而不是某种 JWT 解析库,这似乎是唯一的方法。

Firebase 管理员包括用于解码和验证 id token 以及推断所有信息的方法。这可以防止 cookie 伪造,并将 firebase 身份验证作为您是否通过身份验证的唯一真实来源。

例如(在节点中):

    const admin = require("firebase-admin");
admin.initalizeApp({
credential: admin.credential.cert(yourServiceAccountJsonHere),
databaseURL: "http://YOURDATABASE.firebaseio.com/"
});
admin.verifyIdToken("usertokenasastring") //returns a promise
.then(function(decodedToken){
//process the decoded user token somehow
});

Firebase 调用您的数据库,并确保该用户已登录并且 JWT 中的所有其他信息都有意义,因此您不必担心实现任何类型的验证服务器端。

关于authentication - 使用 Firebase 进行服务器端身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41530665/

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