Используя NodeJS, как я могу проверить JWT (idToken), предоставленный Firebase Auth, без Firebase Admin SDK?
Следуя документу о том, как проверить ID токены , можно использовать любые библиотеки JWT и получить открытый ключ с веб-сайта Google API.
import jwt from 'jsonwebtoken'; import request from 'request'; import { promisify } from 'util'; const rp = promisify(request); const response = await rp('https://www.googleapis.com/robot/v1/metadata/x509/securetoken@system.gserviceaccount.com'); const publicKeys = JSON.parse(response.body); const verifyIdToken = idToken => { const header64 = idToken.split('.')[0]; const header = JSON.parse(Buffer.from(header64, 'base64').toString('ascii')); return jwt.verify(token, publicKeys[header.kid], { algorithms: ['RS256'] }); };