У меня проблемы с проверкой подписи токена idtoken Azure, выданного конечной точкой v2.
Я прочитал документацию (https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-id-and-access-tokens#validating-tokens),, и также есть пример кода, но это относитсяна другой язык, кроме TS / JS.
В настоящее время я мой код
import {
decode,
verify
} from 'jsonwebtoken';
const token = 'myRand0mIdtoken...meh';
const key = 'key from -->'; // https://login.microsoftonline.com/common/discovery/v2.0/keys
console.log(
decode(token), //works fine!
verify(token, key) //JsonWebTokenError: invalid algorithm
);
Как мне поступить?Декодирование работает, а проверка - нет.
Сайт https://login.microsoftonline.com/common/discovery/v2.0/keys указывает на документ JSON, содержащий массив ключей.Это содержит несколько ключевых объектов.Из этого я использовал элемент, в котором значение «kid» совпадает со значением «kid» в заголовке моего idToken.
В этом элементе есть два поля, x5t и x5c, которые выглядят как открытые ключи.Я пробовал оба, но не повезло.
С уважением