我想在C ++中使用this third party library在服务器端验证Firebase的令牌。但我有一些误解: 对于令牌验证,我需要提供公钥和私钥Firebase says that:
必须对应于其中列出的公钥之一 https://www.googleapis.com/robot/v1/metadata/x509/securetoken@system.gserviceaccount.com
但是当我打开链接时,我找不到公钥和私钥,我应该通过它来进行令牌验证。
那么,如何获取用于令牌验证的公钥和私钥?
答案 0 :(得分:1)
您只需要公钥即可验证Firebase ID令牌和jwt。该链接包含公钥json对象(我们称之为publicKeysObject)。您在JWT标头中获得“kid”字段,然后获取公钥,如下所示:publicKeysObject [kidFromJWT]
检查Firebase Admin node.js SDK开源实施,以获取详细信息:https://github.com/firebase/firebase-admin-node/blob/master/src/auth/token-generator.ts