ntfs权限仅控制删除资格,不记录操作行为;必须提前启用高级审核策略、为目标文件夹配置sacl删除审计项、并确保安全日志未被覆盖,才能通过事件id 4663(访问掩码0x10000)查到删除者。
ntfs权限本身不记录“谁删除了文件”,它只控制“谁能删除”,不保存操作日志。要确认删除行为的执行者,必须依赖windows审核策略(auditing)+ 事件查看器(event viewer),且该功能默认是关闭的。
为什么单看NTFS权限查不到删除者?
NTFS权限中的“删除”或“删除子文件夹及文件”只是允许/拒绝某用户执行删除动作的资格,不是操作记录。就像一扇带锁的门——权限告诉你谁有钥匙,但不会自动记下“张三在下午3:22用钥匙开了门”。
真正能查到删除者的前提条件
必须提前完成以下三项配置(缺一不可):
启用对象访问审核策略
组策略路径:计算机配置 → Windows 设置 → 安全设置 → 高级审核策略配置 → 系统审计策略 → 对象访问 → 文件系统→ 启用“成功”和/或“失败”为具体文件或文件夹启用审核ACE(访问控制项)
右键目标 → 属性 → 安全 → 高级 → 审核 → 添加 → 选择用户/组(如 Everyone)→ 勾选“删除”“删除子文件夹及文件”等对应权限 → 应用确保系统日志未被覆盖或清空
事件查看器中Windows 日志 → 安全的日志需保留足够时长(默认可能只存几天)
如何查找删除记录?
满足上述前提后,按以下步骤操作:
- 打开 事件查看器(
eventvwr.msc) - 导航至:
Windows 日志 → 安全 - 筛选事件ID:4663(句柄请求,含删除动作)或 4660(对象被删除)
- 4663 更常用:查看“访问请求类型”字段是否含
DELETE,并确认“访问掩码”值(如0x10000对应删除) - “主体信息”下的
SubjectUserName和SubjectDomainName即执行删除的账户
- 4663 更常用:查看“访问请求类型”字段是否含
- 可配合时间范围、文件路径关键词(在“详细信息”中搜索)缩小范围
✅ 示例:事件ID 4663 中出现
Access Request Information: DELETESubjectUserName: zhangsanObject Name: D:\Reports\2026Q3.xlsx
没有提前开启审核?还能补救吗?
不能。
NTFS不自动记录历史操作,也无内置“回收站级追溯”功能。一旦未开启审核,删除行为即不可追溯。此时只能通过:
- 检查回收站或OneDrive/备份版本(如有)
- 查看第三方备份软件日志(如Veeam、Acronis)
- 分析卷影副本(Shadow Copy)是否存在旧版本(需提前启用)
小提醒:别混淆“删除权限”和“删除记录”
- 用户A有“修改”权限 → 可删文件,但你无法从权限列表里看出他删过
- 用户B不在ACL中 → 根本删不了,但同样不会留下“尝试删除失败”的痕迹(除非你也开启了“失败”审核)
所以,想事后追责,审核策略必须提前部署,不是出事后再配。











