Microsoft graph API с использованием Postman (ошибка user_impersonation) - PullRequest
0 голосов
/ 09 мая 2020

Я использую Postman для работы с Microsoft graph API. Все работает нормально, пока я читаю / пишу ресурс, такой как пользователь или группы. но пока я отправляю запрос на получение информации о действиях пользователя:

GET https://graph.microsoft.com/v1.0/users/{user-id}/activities

, я получаю эту ошибку:

Security Token does not contain a scope claim of user_impersonation or an expected scope

Итак, где я могу найти « user_impersonation »? и как получить активность пользователей?

Ps: Я попытался создать новую область в своем приложении. если это правильный метод. Как я могу использовать эту область в запросах почтальона?

1 Ответ

0 голосов
/ 09 мая 2020

Правильно ли я предполагаю, что вы пытаетесь получить пользователя, который не аутентифицирован? Идентификатор IE в токене! = Идентификатор пользователя?

В этом примере между клиентом и Microsoft Graph не существует согласия пользователя. Клиент зарегистрировался для получения разрешений user.read и contacts.read, а также области Azure Key Vault https://vault.azure.net/user_impersonation. Когда клиент запрашивает токен для scope = https://graph.microsoft.com/.default, пользователь увидит экран согласия для областей user.read, contacts.read и Key Vault user_impersonation. В возвращенном токене будут только области user.read и contacts.read, и его можно будет использовать только с Microsoft Graph.

Источник: https://docs.microsoft.com/en-gb/azure/active-directory/develop/v2-permissions-and-consent

На мой взгляд (никогда не использовал Azure), это больше связано с OAuth2, вызывающим у вас проблемы, чем с Azure, я бы попытался добавить область https://vault.azure.net/user_impersonation при аутентификации / oauth2 / token или что-то еще Конечная точка -.

Я бы посмотрел документацию по Vault и посмотрел, ссылались ли они где-нибудь на отсутствующую область, или попробовал бы полный URL-адрес в scope полезной нагрузки.

...