Graph API用于与OnPremise Exchange通信的调用仅在Playground中运行。

9

我们的设置是一个本地部署的Exchange服务器,可以通过Graph API访问。https://learn.microsoft.com/en-us/graph/hybrid-rest-support

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

我们遇到了问题,我们的令牌只是“部分”工作。而由“Graph Playground”创建的令牌完全工作。但我们找不到任何区别。

  • 当我使用Graph Playground或使用Graph Playground生成的令牌 => 所有请求都正常工作
  • 当我创建一个令牌(通过我的应用程序注册)=> 只有一些请求正常工作

令牌似乎是有效的,某些调用(如/me)正常工作,但所有与Exchange相关的调用(如/me/contacts)都失败并显示以下错误:

使用Postman生成的令牌有效:**
错误:
{ "error": { "code": "MailboxNotEnabledForRESTAPI", "message": "REST API is not yet supported for this mailbox." } }

(这是一个非常通用的错误,大多数情况下并不提供关于实际问题的任何信息)

令牌生成:

我通过与Graph Playground相同的方式创建令牌(OAuth - Implicit流程):

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=????

令牌分析:

enter image description here

顺便说一句,它在几天内有效,没有人更改任何内容:)

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

已经有一个主题了,但我不是它的所有者。此外,没有更多的回复......我无法为外部主题提供悬赏,这就是为什么我创建了一个新主题。您可以在此处找到它:

MailboxNotEnabledForRESTAPI - 启用HMA on-premise服务器的Microsoft Graph API集成


请分享响应信息(请求ID,时间戳),以便我进行分析! - Dev
请求编号:c465e6ec-9a7c-4f18-bce5-69ef132402e7日期:2020年11月22日 星期日 16:11:33 GMT服务器信息:北欧,SliceC,环 4,ScaleUnit 002,RoleInstance AGSFE_IN_2 - Cyril Iselin
很遗憾,我没有看到以上请求的任何记录。请给我一个新的请求ID和时间戳 - 尝试进行新的API调用,以便您可以获取它!另外,请确认先前是否使用相同的API调用正常工作,现在不再工作?我看到您的陈述“顺便说一下,它工作了几天,没有人更改了任何内容”;但是为了验证上面失败的API调用,请确认一下。 - Dev
2
@Dev 这并没有解释为什么使用相同的凭据和游乐场请求的令牌一切都能正常工作。 - Manuel Amstutz
微软的新回复是:“该工单已经升级到最高专业部门,案件正在处理中”。我会在这里发布更新 :) - Cyril Iselin
显示剩余5条评论
1个回答

0

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

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

可以将应用程序限制在特定邮箱上。也许你本地的Exchange上有某种设置或策略,你必须连接到Exchange Online Powershell来设置它,所以也许你可以在那里找到一些东西。这只是一个猜测。

要查找此问题,我将从检查本地Exchange日志开始。

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接