必须启用“审核对象访问”和“审核登录事件”策略,并为目标文件夹配置sacl审核条目,否则仅显示错误5或0x80070005等通用提示;启用后通过事件id 4663、4625、5145在安全日志中定位失败用户、时间及权限缺失原因。
windows 文件共享访问被拒绝时,系统默认不会自动生成详细的审计记录,除非你提前启用了相关安全策略并配置了审核规则。没有开启审核,就只有事件查看器里零星的“错误 5”或“错误 0x80070005”这类通用提示,无法定位是哪个用户、在什么时间、因哪条权限缺失而失败。
需要手动启用共享与对象访问审核
仅靠“共享权限”或“NTFS 权限”设置本身不会触发审计日志。必须通过本地组策略或域策略启用两项关键审核:
- 审核对象访问:控制对文件/文件夹的 NTFS 级操作(如读取、写入、遍历),需配合在目标文件夹上启用“审核项”
- 审核登录事件:捕获网络登录尝试(含失败),可识别是否卡在身份验证环节(如凭据错误、Guest 被拒)
路径:gpedit.msc → 计算机配置 → Windows 设置 → 安全设置 → 本地策略 → 审核策略,勾选这两项并设为“成功和失败”。
NTFS 文件夹必须单独配置审核条目
启用全局审核策略只是第一步。真正记录谁访问了哪个文件夹,还得在该文件夹的“安全 → 高级 → 审核”中添加具体规则。例如:
- 添加用户组 Everyone 或特定域用户
- 勾选“失败”下的 读取属性、读取数据、遍历文件夹(对应 SMB 访问常见拒绝动作)
- 确保“应用于”设为“此文件夹、子文件夹和文件”
若只开了策略但没配审核条目,事件查看器里依然查不到具体拒绝来源。
关键日志位置与典型事件ID
启用后,相关记录集中在 事件查看器 → Windows 日志 → 安全日志,重点关注以下 ID:
- 4663:试图访问对象失败(含详细资源路径、访问请求类型、结果“失败”)
- 4625:账户登录失败(说明问题出在认证层,如密码错、账户禁用、空密码被拒)
- 5145:网络共享对象被访问(显示共享名、客户端 IP、访问结果)
注意:4663 日志会明确写出“访问掩码”(如 0x100000 表示 SYNCHRONIZE 缺失),这对排查 SMB2 拒绝访问特别有用。
常见漏项:SMB 协议层无审核,只能靠网络跟踪辅助
Windows 审计不记录 SMB 协议协商细节(如 SMB2 CREATE 请求中 DesiredAccess 字段是否含 Synchronize 位)。若怀疑是协议兼容性问题(如 NetApp 设备缺 SYNCHRONIZE 权限),需结合:
- 使用 Wireshark 或 Microsoft Message Analyzer 抓取 SMB 流量,过滤 smb2.cmd == 1
- 运行 accesschk.exe -ld 验证 NTFS 是否真包含 SYNCHRONIZE 权限
- 检查服务端是否禁用 SMB2(
Get-SmbServerConfiguration | fl EnableSMB2Protocol)











