Firebase Auth проверяет токены идентификатора JWT без SDK с NodeJS - PullRequest
1 голос
/ 05 мая 2019

Используя NodeJS, как я могу проверить JWT (idToken), предоставленный Firebase Auth, без Firebase Admin SDK?

1 Ответ

1 голос
/ 05 мая 2019

Следуя документу о том, как проверить 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'] });
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...