Сегодня у меня возникла проблема с получением токена доступа Azure AD от Postman. Это пока он работал раньше для того же приложения и других приложений, над которыми я работаю. Но ни один из них сегодня не работает. Я работал правильно, но теперь он показывает мне эту ошибку:
Ошибка: AADSTS900144: тело запроса должно содержать следующий параметр: «client_id».
Я использую https://login.microsoftonline.com/common/oauth2/v2.0/authorize в качестве URL-адреса аутентификации и https://login.microsoftonline.com/common/v2.0/token для URL токена доступа. Я пробовал их для URL-адреса токена доступа, но ни один из них не работал. https://login.microsoftonline.com/{{tenant_id}}/v2.0/tokenhttps://login.microsoftonline.com/common/tokenhttps://login.microsoftonline.com/{tenant_id}/токен вот моя конфигурация Azure AD oauth 2.0. Также, как видите, в теле запроса нет client_id.
@AnandSowmithiran Они определены и включены, проблема в том, что даже предыдущие приложения, которые у меня есть в моей коллекции почтальонов, имеют ту же ошибку. Я использовал их без проблем, но теперь все запросы имеют ошибку. Изменилось ли что-нибудь в почтальоне или Azure AD?


Я попытался воспроизвести то же самое в своей среде и получил следующие результаты.
Вы можете получить значения URL-адреса аутентификации и URL-адреса токена доступа из приложения Azure AD, которые различаются в зависимости от поддерживаемого типа учетной записи, как показано ниже:
Перейдите на портал Azure -> Azure Active Directory -> Регистрация приложений -> Ваше приложение -> Обзор -> Конечные точки.

Теперь я добавил переменные среды в Postman, определив их, как показано ниже:

Обязательно выберите правильную среду при запросе токена с помощью variables.
Я заполнил необходимые данные так же, как и вы, чтобы получить токен доступа, как показано ниже:

Когда я выбрал «Получить новый токен доступа», я успешно получил token, как показано ниже:

Ошибка обычно возникает, если вы пропустили включение
client_idв то время как получение токена доступа.
Я изменил параметр client_id на пустой в переменных, как показано ниже:

Когда я снова попытался получить токен доступа, я получил ту же ошибку, что и ниже:

Чтобы устранить ошибку, обязательно передайте значение client_id в правильной среде и сохраните его.
Я узнал, почему он действует так: Я проверил компьютер моего друга, и он там работал! Проблема заключалась в последнем обновлении Postman. Они что-то изменили в авторизации. просто измените Аутентификацию клиента на Отправить учетные данные клиента в теле, и это сработает.
Проверьте, определены ли и включены ли ваш client_id и другие
variables, см. эту справку почтальона для получения более подробной информации.