2014-10-31 7 views
0

Я использую пакет adal-node в своем приложении Nodejs для аутентификации с использованием Azure AD. URL: https://www.npmjs.org/package/adal-nodeNodejs - выпуск пакета ADAL

Я использую метод purchaseTokenWithAuthorizationCode, чтобы получить токен, и он отлично работает. Когда мой код авторизации истекает, я хочу обновить токен, используя приведенное ниже. authenticationContext.acquireTokenWithRefreshToken (_tokenData.refreshToken, authdata.clientId, authdata.resource, callback).

Но когда я запускаю этот код, он дает мне ошибку ниже. "Получить Токен запрос возвратил ошибку HTTP: 400 и ответ сервера: {" Ошибка ":" invalid_request " "error_description": " AADSTS90014: Тело запроса должно содержать следующий параметр: 'client_secret или client_assertion'

Этот метод не будет воспринимать секрет клиента как аргумент, но он все же жалуется, что ему нужен секрет клиента.

Не могли бы вы помочь?

Благодаря Анил

ответ

0

К сожалению, библиотека не поддерживает ваш сценарий прямо сейчас. Функция purchaseTokenWithRefreshToken, которую вы используете, предназначена для публичных клиентов OAuth, которые не требуют секретности клиента, но ваше приложение является конфиденциальным клиентом OAuth.

Я зарегистрировал следующую проблему в репо GitHub, чтобы отслеживать необходимость добавления нового метода, который поддерживал бы ваш сценарий.

https://github.com/AzureAD/azure-activedirectory-library-for-nodejs/issues/22

+0

Thanks Rich. - Anil –

+0

Привет, Могу ли я использовать метод purchaseTokenWithClientCredentials, когда мой код auth истекает, а не метод purchaseTokenWithRefreshToken? Будет ли это работать так же, как снова получить токен? В чем разница между этими двумя методами? –

+0

purchaseTokenWithClientCredentials предназначен только для аутентификации сервера. Он не принимает параметр токена обновления, поэтому он не будет выдавать токены, связанные с пользователем, для которого вы получили код авторизации. В результате у вас не будет доступа к этим ресурсам пользователей. –

Смежные вопросы