如何通过Microsoft Graph API获取SharePoint文件敏感度标签应用审计日志?
问题分析
你之前的两个API调用均使用了错误的端点:
security/alerts是安全警报专用端点,并非审计日志存储位置,因此过滤条件无效auditLogs/directoryAudits仅记录Azure AD目录相关操作,不包含SharePoint文件的敏感度标签操作
正确API端点与查询参数
要追踪SharePoint文件的敏感度标签应用/修改操作,需使用通用审计日志端点,并通过匹配正确的活动名称过滤:
1. 基础查询(获取标签应用/修改日志)
GET https://graph.microsoft.com/v1.0/auditLogs/auditLogs?$filter=resourceType eq 'SharePoint' and (activityDisplayName eq 'Apply sensitivity label to file' or activityDisplayName eq 'Change sensitivity label of file')
2. 精准过滤(可选)
如需缩小范围,可添加时间范围或其他条件:
GET https://graph.microsoft.com/v1.0/auditLogs/auditLogs?$filter=resourceType eq 'SharePoint' and (activityDisplayName eq 'Apply sensitivity label to file' or activityDisplayName eq 'Change sensitivity label of file') and activityDateTime ge 2024-08-01T00:00:00Z
关键注意事项
- 权限要求:调用此端点需配置
AuditLog.Read.All应用权限或委托权限,确保应用已完成授权 - 日志延迟:SharePoint审计日志存在15-60分钟的延迟,手动操作后需等待一段时间再执行查询
- 活动名称适配:不同版本的Microsoft 365可能存在活动名称差异,可先调用无过滤的
auditLogs/auditLogs端点,查看实际返回的activityDisplayName值后调整过滤条件
替代方案
若通用审计日志端点无法满足需求,可使用Microsoft Purview合规场景专用端点:
GET https://graph.microsoft.com/v1.0/security/compliance/auditEvents?$filter=workload eq 'SharePoint' and (operation eq 'ApplyLabel' or operation eq 'ChangeLabel')
内容的提问来源于stack exchange,提问作者John Park
相关产品推荐
相关产品推荐

