首页 > 解决方案 > 对 OnPremise Exchange 的 Graph API 调用仅适用于 Playground

问题描述

我们的设置是一个本地 Exchange 服务器,可通过图形 api 访问。https://docs.microsoft.com/en-us/graph/hybrid-rest-support

(https://www.msxfaq.de/cloud/graph/graph_und_exchange_onprem.htm)

我们在问题中运行,我们的令牌只是“部分”工作。由“Graph-Playground”创建的代币正在完全发挥作用。但是我们找不到任何区别。

令牌似乎是有效的,一些像/me这样的调用正在工作,但是所有与交换相关的调用,比如/me/contacts都失败并出现此错误

请求,他们使用 Postman 生成的令牌:**
错误:
{“错误”:{“代码”:“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=??? ?

代币 - 分析:

在此处输入图像描述

作为旁注,它工作了几天,没有人改变任何东西:)

所以我不知道为什么“Graph Playground”可以创建一个工作令牌,而我的令牌只能“部分”工作。你能帮助我吗?

已经有一个线程,但我不是它的所有者。也没有更多的回应......我无法为外国线程提供赏金,这就是我创建一个新线程的原因。你可以在这里找到它:

MailboxNotEnabledForRESTAPI - Microsoft Graph API 与启用 HMA 的本地服务器集成

标签: microsoft-graph-apiexchange-serverhybridon-premises-instances

解决方案


我认识到您的错误,我们在几种情况下看到它(对于 Office 365):

  1. 用户没有 Exchange 许可证(可能不是这种情况,因为它在资源管理器中工作)。
  2. 客户租户已设置额外的安全性。

可以将应用程序限制到某些邮箱。也许您的本地 Exchange 上也有类似的设置或策略,您必须连接到 Exchange Online Powershell 进行设置,所以也许您可以在那里找到一些东西。这只是一个疯狂的猜测。

为了追查这个问题,我将开始检查本地 Exchange 日志。

您是否尝试过使用/users/{upn}/calendar端点?也许只是这/me/部分不起作用。


推荐阅读