Отказ в доступе к ошибкам в настройках mailbox для пользователей - PullRequest
0 голосов
/ 19 февраля 2019

Я пытаюсь поразить https://graph.microsoft.com/v1.0/users/{userId}/mailboxSettings конечную точку токеном аутентификации и в ответ получаю 403 Error Access Denied ответ.

Я предоставил как уровень приложения, так и делегированные разрешения для MailboxSettings.Read, MailboxSettings.ReadWrite.Я могу проверить, включены ли эти разрешения в установленном приложении, проверяя мой декодированный токен авторизации с jwt.ms.Вот пример из декодированного токена:

"scp": "Directory.AccessAsUser.All Files.ReadWrite.All Group.ReadWrite.All Mail.Read Mail.ReadWrite Mail.Send MailboxSettings.Read MailboxSettings.ReadWrite Sites.ReadWrite.All"

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

Я могу вернуть mailboxSettings, если я попал в конечную точку для имени пользователя admin или конечной точки https://graph.microsoft.com/v1.0/users/me/mailboxSettings.Любая помощь приветствуется.

Ответы [ 3 ]

0 голосов
/ 25 февраля 2019

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

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

0 голосов
/ 01 марта 2019

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

После перехода на грант Client Credentials я успешно извлекаю токен Auth, содержащий область действия mailboxSettings уровня приложения, и могу получить 200 ответов на конечных точках для всех пользователей.

0 голосов
/ 20 февраля 2019

Быстро я протестировал с Microsoft Graph Explorer, и он работает для меня.Поэтому я бы попросил вас протестировать приведенный выше вызов API с помощью Graph Explorer и посмотреть, сможете ли вы повторить проблему или нет.

...