You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

能否通过Microsoft Graph编程查询Office 365 Enterprise Audit Logs?

答案:完全可以通过Microsoft Graph实现Office 365审计日志的编程查询

当然可以!你完全能通过Microsoft Graph以编程方式查询Office 365企业审计日志,甚至能精准定位到你关注的OneDrive文件操作事件,完全替代手动在Security & Compliance Center的查询流程。

核心API与权限要求

你需要用到Microsoft Graph的Unified Audit Log端点,这正是对应Security & Compliance Center后台的审计日志数据源:

  • 核心请求端点:GET /auditLogs/unifiedAuditLogs
  • 必备权限:AuditLog.Read.All(无论是用委托权限还是应用权限,都需要全局管理员或合规管理员完成权限同意操作)

针对OneDrive事件的精准筛选

你关注的OneDrive文件上传、打开、修改事件,对应以下具体的OperationName值,配合Workload eq 'OneDrive'就能精准过滤出目标日志:

  • 文件上传:FileUploaded
  • 文件打开:FileAccessed
  • 文件修改:FileModified

这里给你一个可直接测试的示例请求(可以用Graph Explorer快速验证,也能集成到自定义客户端代码中):

GET https://graph.microsoft.com/v1.0/auditLogs/unifiedAuditLogs?$filter=Workload eq 'OneDrive' and (OperationName eq 'FileUploaded' or OperationName eq 'FileAccessed' or OperationName eq 'FileModified')&$top=100

响应内容详解

返回的响应会包含每个事件的完整元数据,关键字段包括:

  • userId:触发事件的用户UPN/ID
  • objectId:涉及操作的文件唯一ID
  • AuditData:JSON格式的详细操作信息,比如文件路径、操作发生的IP地址、具体时间戳等
  • CreationDateTime:事件被记录的时间

几个重要注意事项

  • 日志同步延迟:部分OneDrive事件可能需要15分钟到24小时才能同步到Unified Audit Log中,建议不要在操作后立即查询
  • 租户审计状态:确保你的Office 365租户已经开启了审计日志功能(默认大多数企业租户是启用状态,如果未开启,需要管理员在Security & Compliance Center中手动开启)
  • 分页处理:如果查询结果较多,需要处理响应中的@odata.nextLink字段来实现分页查询,避免遗漏数据

内容的提问来源于stack exchange,提问作者Dogu Arslan

火山引擎 最新活动