【问题标题】:Fetch Exchange online message details using InternetMessageId使用 InternetMessageId 获取 Exchange 在线消息详细信息
【发布时间】:2018-10-07 08:34:51
【问题描述】:

当我收到 SendAs 事件(来自其他 MS 审计源)时,它包含的消息本身信息非常少,但有一个 InternetMessageId 标识符。
我正在尝试使用它获取更多信息,但只得到错误。

首先使用MessageTraceDetailreport,我尝试使用InternetMessageId 作为MessageIdMessageTraceId 来获取,两者都返回相同的错误:

GET https://reports.office365.com/ecp/reportingwebservice/reporting.svc/MessageTraceDetail
带查询:"$filter" -> "MessageId eq guid'<AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE@mycorp.onmicrosoft.com>'"

{ "odata.error": { "code": "", "message": { "lang": "en-US", "value": "Unrecognized 'Edm.Guid' literal 'guid'<AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE@mycorp.onmicrosoft.com>'' at '13' in 'MessageId eq guid'<AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE@mycorp.onmicrosoft.com>''." } } }

其次,使用Microsoft Graph API of get message

我创建了一个 AD 应用程序并授予它所有“邮件”相关的应用程序和委托权限。

请求包含用户主体名称和消息 ID:

GET https://graph.microsoft.com/beta/users/myuser@mycorp.onmicrosoft.com/messages/%3AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE@mycorp.onmicrosoft.com%3E

生成一个通用的 500 Internal Server Error

我做错了什么?

是否有任何其他 API 允许使用 InternetMessageId 获取消息详细信息?

【问题讨论】:

    标签: outlook office365 exchange-server


    【解决方案1】:

    获取https://reports.office365.com/ecp/reportingwebservice/reporting.svc/MessageTraceDetail 带查询:“$filter”->“MessageId eq guid''”

    虽然 MessageId 可以包含 GUID,但它不是 Guid 数据类型,因此只需将其作为字符串查询,但是您需要转义字符串才能使用它,例如

    System.Uri.EscapeDataString(("MessageId eq '" + InternetMessageId + "'")

    https://graph.microsoft.com/beta/users/myuser@mycorp.onmicrosoft.com/messages/%3AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE@mycorp.onmicrosoft.com%3E

    此处引用的 id 是与 InternetMessageId 不同的项目的 Exchange 存储标识符,您必须使用 InternetMessageId 搜索消息,例如

    https://graph.microsoft.com/v1.0/me/messages?$filter=internetMessageId eq '<AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE@mycorp.onmicrosoft.com>'
    

    【讨论】:

      【解决方案2】:

      您可以尝试以下 Graph API 请求:

      https://graph.microsoft.com/v1.0/me/messages?$filter=internetMessageId eq '<1430948481468.34600@THCIE7Dev2.onmicrosoft.com>'
      

      更多内容请看链接: Microsoft Graph API - find message by internetmessageid

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-03-26
        • 2019-08-04
        • 1970-01-01
        • 1970-01-01
        • 2016-11-16
        • 2014-03-30
        • 1970-01-01
        相关资源
        最近更新 更多