Firebase服务器端验证()在引擎盖下做什么



我正在考虑使用firebase执行身份验证。我是JWT的新手,所以如果这是一个明显的问题,我很抱歉,但我不明白验证实际上是如何进行的。FirebaseAuth.getInstance().verifyIdToken(idToken)似乎不同步,因为结果是通过侦听器获得的。我知道某些证书如下所述使用,并且这些证书定期旋转。这是否意味着我的后端服务器和Firebase Server的每个时间时间之间需要网络?我将调用verifyIdToken()?这不是问题吗?

为了验证Firebase ID令牌,需要检索firebase auth公共证书(网络请求),并定期旋转这些证书。需要这些以确保ID令牌没有被篡改。JWT首先解析,检查令牌的算法检查是否与预期的算法相匹配,然后使用获得的公共密钥进行验证,最后对JWT索赔进行验证,确保令牌未过期。

最新更新