使用 EWS Managed API 访问 Exchange (2016) 审核日志

Access Exchange (2016) audit logs with EWS Managed API

我用 C# 编写了一个小型 EWS API 程序来检查 Exchange 审计日志。该测试针对 Exchange 2016 服务器。

当我尝试检查管理员审核日志文件夹时:

Folder myFolder= Folder.Bind(service, WellKnownFolderName.AdminAuditLogs);

我收到 "access is denied" 错误:

Microsoft.Exchange.WebServices.Data.ServiceResponseException: Access is denied. Check credentials and try again.

因为它是一个测试环境,我已经授予我正在使用的用户所有类型的权限(domain/enterprise 域中的管理员、组织管理、Exchange 中的记录管理等),除了AdminAuditLogs 文件夹它可以查询所有 w/o 错误。 (例如 Folder.Bind(service, WellKnownFolderName.Root 工作正常。)

基本上这与 'Andy' 几年前遇到的问题相同(social.msdn 未回答的问题):

https://social.msdn.microsoft.com/Forums/en-US/56713fb3-f134-4d64-97d0-8516aa2fdedf/mailbox-audit-logging-access-via-ews?forum=exchangesvrdevelopment

据我所知,该文件夹不能像 EWS 那样通过客户端 API 访问。例如,由于安全隐患,访问邮箱的其他人可以 edit/delete 日志来隐藏他们的操作。所有访问都应通过 Exchange Management Shell cmdlets

完成

干杯 格伦