2

我们有一个使用 MS Graph API 与客户的电子邮件/日历集成的应用程序。其中一位使用混合设置的客户(客户 A)报告了问题。所有用户突然收到电子邮件集成无法正常工作。我们使用我们的生产应用程序凭证和不同的环境(本地、开发云 AWS、暂存云 GCP、生产云 GCP)和有效的用户令牌对 MS Graph API 执行了几次测试调用(端点 /me/sendMail)。以下是结果和奇怪的行为:

  1. 好的。如果我们从所有环境中调用我们自己的测试帐户(Office365,非混合) - 一切正常。
  2. 好的。如果我们从所有环境中调用客户 B 帐户(Office365,非混合) - 一切正常。
  3. 好的。如果我们从本地、开发云 AWS 环境中调用客户 A 帐户(混合设置) - 一切正常。
  4. 超级奇怪。如果我们从暂存云 GCP、prod 云 GCP 环境中调用客户 A 帐户(混合、Exchange 2016 设置) - 我们会收到 404 和以下错误。

{“error”:{“code”:“MailboxNotEnabledForRESTAPI”,“message”:“REST API is not yet supported for this mailbox.“}}

客户的 IT 声称他们的日志中没有错误可以与此问题相关联。他们按照这里的 MS 建议做了所有事情https://docs.microsoft.com/en-us/graph/hybrid-rest-support#requirements-for-the-rest-api-to-work-in-hybrid-部署

更新:

在检查更多内容后,当特定 MS 数据中心为请求提供服务时,我们会收到 404:

以下是 404 的响应标头参数:

x-ms-ags-diagnostic {"ServerInfo":{"DataCenter":"UK South","Slice":"SliceC","Ring":"3","ScaleUnit":"000","RoleInstance": “AGSFE_IN_11”}}

x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"Central US","Slice":"SliceC","Ring":"2","ScaleUnit":"002","RoleInstance" :"AGSFE_IN_14"}}

我们得到了 201(成功):

x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"西欧","Slice":"SliceC","Ring":"5","ScaleUnit":"003","RoleInstance" :"AGSFE_IN_52"}}

4

1 回答 1

0

我会尝试用 MS Graph explorer 或 POSTMAN 隔离问题,看看我是否仍然可以重现问题(使用相同的 Graph API 调用)。如果答案是肯定的,那么我将向 Microsoft 提交支持票证,以便他们可以验证混合要求的配置是否存在任何问题(如他们所定义的那样)或 API 的任何问题或 IP 的任何问题。

于 2020-11-17T19:43:21.020 回答