Firebase发送标头中带有“ kid”的JWT令牌。如何在MongoDB Stitch中用“ kid”值验证JWT?

时间:2019-06-16 10:44:50

标签: mongodb firebase firebase-authentication jwt

我正在尝试使用MongoDB Stitch自定义身份验证来验证从Firebase身份验证生成的JWT。连接到MongoDB时出现以下问题:

error: "crypto/rsa: verification error"

我使用了https://firebase.google.com/docs/auth/admin/verify-id-tokens#verify_id_tokens_using_a_third-party_jwt_library

中提到的方法生成的公共密钥

,并将密钥保存在“缝合值和秘密”中。另外,从Firebase应用

中的Stitch中指定受众应用ID
const stitchClient = Stitch.initializeDefaultAppClient("stitch-app-id");
const credential = new CustomCredential("firebase_token");
stitchClient.auth.loginWithCredential(credential);

嗨, 与支持团队聊天之后,我了解到JWT令牌标头包含“ kid”值,需要从标头中删除该值才能使代码正常工作。

我已经尝试过创建一个没有“孩子”的JWT来进行测试,它确实可以工作。但是JWT是从firebase生成的,因此我无法更改标头,这就是上述错误的原因。有没有办法用标头中的“ kid”来验证JWT?

0 个答案:

没有答案