Рабочий процесс Azure APIM oAuth — маркер обновления отсутствует

Я включил oAuth в управлении Azure API. Затем, используя ClientId, Client Secret, Scope, Access Token URL и Grant Type, я смог получить токен доступа. Как я могу получить токен обновления из API?

1 ответ

Чтобы получить токен обновления из API, вам нужно добавитьразрешение в области.

Обратите внимание, что поток учетных данных клиента работает только с разрешениями типа «Приложение» . Таким образом, вы не получите токен обновления, используя этот поток, какразрешение имеет делегированный тип.

Вместо этого вы можете использовать поток кода авторизации в качестве типа гранта.

Я попытался воспроизвести то же самое в своей среде через Postman и получил следующие результаты:

В моем приложении Azure AD я добавил разрешения API , как показано ниже:

введите описание изображения здесь

Чтобы получить токен обновления, измените тип гранта на Код авторизации и включитев области, как показано ниже:

введите описание изображения здесь

Когда вы выбрали, откроется одно новое окно, в котором вы должны войти в систему со своими учетными данными, как показано ниже:

введите описание изображения здесь

После успешной аутентификации вы получите токен доступа и токен обновления, как показано ниже:

введите описание изображения здесь введите описание изображения здесь

Вам не нужно делать два отдельных вызова, как один, чтобы получить access tokenи еще один, чтобы получить refresh token.

Вместо этого вы можете напрямую добавить offline_accessв области вместе с настраиваемой областью API.

Другие вопросы по тегам