Azure AD B2C (NodeJS): неавторизованная ошибка 401 для запроса с действительным токеном - PullRequest
0 голосов
/ 26 февраля 2019

Я использую Azure AD B2C для аутентификации для своего NodeJS API.Тем не менее, я продолжаю получать 401 Несанкционированная ошибка Azure AD B2C.Когда я добавляю ignoreExpiration: true к своим параметрам аутентификации AAD, я не получаю 401 Несанкционированную ошибку, и мой API работает нормально.Однако, как только я удаляю ignoreExpiration, я получаю 401 Несанкционированную ошибку.

Я даже сгенерировал новый токен, проверил, что он действителен (и не истек), расшифровав токен с помощью https://jwt.io/. Iдаже убедился, что он имеет правильную область действия.

На моем компьютере сейчас работает API, так как я тестирую его с помощью POSTMAN.Может кто-нибудь, пожалуйста, помогите?Вот как выглядят мои параметры AAD:

var aad_auth_options = { identityMetadata: process.env.AADMetadataEndpoint, clientID: process.env.ClientId, audience: process.env.AADAudience, isB2C: true, validateIssuer: false, loggingLevel: 'info', passReqToCallback: false, policyName: process.env.PolicyName, // ignoreExpiration: true, //When uncommented, the authentication works as expected! loggingNoPII: false }

1 Ответ

0 голосов
/ 26 февраля 2019

Я пробовал использовать приведенные ниже параметры, у меня это сработало.

var options = {
    identityMetadata: "https://login.microsoftonline.com/" + tenantID + "/v2.0/.well-known/openid-configuration/",
    clientID: clientID,
    policyName: policyName,
    isB2C: true,
    validateIssuer: true,
    loggingLevel: 'info',
    passReqToCallback: false
};

Вы также можете передать аудиторию. Репозиторий, который я использовал для тестирования, упоминается ниже -

https://github.com/Azure-Samples/active-directory-b2c-javascript-nodejs-webapi/blob/master/index.js

Примечание. - Я использовал пользовательский поток AD B2C вместо пользовательских политик.

Не могли бы вы попробовать и посмотреть, работает ли он.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...