Вызовы Graph API в OnPremise Exchange работают только в Playground

Наша установка - это локальный сервер Exchange, доступный через графический интерфейс api. https://docs.microsoft.com/en-us/graph/hybrid-rest-support

Мы сталкиваемся с проблемой, что наш токен работает только "частично". И токен, созданный "Graph-Playground", полностью рабочий. Но мы не можем найти никакой разницы.

  • Когда я использую Graph-Playground или использую токен, сгенерированный Graph-Playground => все запросы работают
  • Когда я создаю токен (при регистрации в приложении) => работают только некоторые запросы

Токен кажется действительным, некоторые вызовы, такие как / me, работают, но все вызовы, связанные с обменом, например / me / contacts, не работают с этой ошибкой

Запрос, они работают с токеном, сгенерированным почтальоном:**
Ошибка:
{"ошибка": { "код": "MailboxNotEnabledForRESTAPI", "сообщение": "REST API еще не поддерживается для этого почтового ящика". }}

(это очень общая ошибка, и в основном ничего не говорится о реальной проблеме)

Генерация токенов:

Я создаю свой токен так же, как Graph-Playground создает токен (OAuth - неявный поток):

https://login.microsoftonline.com/common/oauth2/v2.0/authorize?response_type=token& state =test2&client_id=????& scope =openid%20profile%20User.Read%20email%20Contacts.Read&redirect_uri=????

Токен - Анализ:

Кстати, он работал несколько дней, никто ничего не менял:)

Поэтому я понятия не имею, почему "Графическая площадка" может создавать рабочий токен, а мой токен работает только "частично". Вы можете мне помочь?

Тема уже существует, но я не ее владелец. Также больше нет ответов... Я не могу предоставить вознаграждение за сторонний поток, поэтому создаю новый поток. Вы можете найти это здесь:

MailboxNotEnabledForRESTAPI - интеграция API Microsoft Graph с локальным сервером HMA с поддержкой

1 ответ

Признаю вашу ошибку, мы видим ее в нескольких случаях (для Office 365):

  1. У пользователя нет лицензии на Exchange (наверное, не так, так как она работает в проводнике).
  2. Клиент-клиент настроил дополнительную безопасность.

Вы можете ограничить приложения определенными почтовыми ящиками . Возможно, на вашем локальном Exchange также есть какие-то настройки или политики, вам нужно подключиться к Exchange Online Powershell, чтобы установить их, так что, возможно, вы найдете что-то там. Это просто дикая догадка.

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

Вы пробовали использовать /users/{upn}/calendarконечная точка? Может дело в том, что /me/ часть не работает.

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