Токен Microsoft Graph Access содержит неверное разрешение для API контактов - PullRequest
1 голос
/ 04 июля 2019

Так что в основном мне нужно получить доступ к контактам пользователя офиса 365. Я использую Microsoft Graph API и успешно могу получить все контакты через HTTP GET в формате JSON. Но сейчас я пытаюсь записать JSON в API https://graph.microsoft.com/v1.0/me/contacts с HTTP POST, но каждый раз получаю 403 - Отказано в доступе. Поэтому я зашел на https://jwt.io/, проверил токен доступа и увидел, что у меня нет прав на запись в контакты.

Я получаю эти разрешения:

"scp": "Contacts.Read openid профиль User.Read"

Даже если я установил Contacts.ReadWrite только в настройках регистрации приложений на портале Azure.

Права доступа

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

1 Ответ

0 голосов
/ 05 июля 2019

Если вы изменили разрешения, пользователям необходимо дать согласие еще раз.

enter image description here

Вы можете принудительно подтвердить согласие пользователя с помощью URL-запроса, добавить и запросить =согласитесь на URL запроса аутентификации.

https://login.microsoftonline.com/{tenant}/oauth2/authorize?
client_id={your_client_id}
&response_type=code
&response_mode=query
&resource=https://graph.microsoft.com
&state=12345
&prompt=consent

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

enter image description here

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