windows" style="box-sizing: inherit;outline-color: inherit;font-size: clamp(1.875rem, 22.1053px + 1.64474vw, 2.5rem);padding: 0px;overflow-wrap: break-word;line-height: 1.3">访问 Windows 中的 SMB 文件共享时拒绝访问
本文有助于修复访问服务器消息块 (SMB) 文件共享时出现的访问 拒绝 错误。
适用于:Windows Server 2012 R2、Windows 7 Service Pack 1
原始 KB 编号: 3035936
症状
尝试通过 SMB 版本 2 协议访问位于网络设备 (NetApp) Filer 或支持基于 Windows 的系统的 SMB2 的 Windows Server 上的特定文件夹时,访问将被拒绝。 此问题发生在以下版本的 Windows 中:
Windows 8.1
Windows Server 2012 R2
Windows 8
Windows Server 2012
Windows 7
Windows Server 2008 R2
Windows Vista
Windows Server 2008
备注
如果在客户端上禁用 SMB2 协议或使用 Windows SMB 客户端(如 Windows XP 或 Windows Server 2003),则不会出现此问题。
原因
出现此问题的原因是 SMB 共享上的目标文件夹缺少 SYNCHRONIZE 访问控制条目。
解决方案
若要解决此问题,请使用 ICACLS 实用工具 设置包含 Synchronize 位的所需权限。
例如,在命令提示符下键入以下命令,然后按 Enter:
控制台ICACLS h:\folder /grant domain\user:(RC,RD,REA,RA,X,S)
特定权限括号中的逗号分隔列表:
RC - 读取控件
RD - 读取数据/列表目录
REA - 读取扩展属性
RA - 读取属性
X - execute/traverse
S - 同步
故障排除
可以使用以下方法来验证和排查问题。
验证 NetApp Filer 是否在文件夹上设置了 Synchronize 位。
网络跟踪可以在请求和响应数据包的文件夹上显示 SMB2 CREATE 进程的 DesiredAccess 错误。
Windows Sysinternals 网站上提供了AccessChk.exe工具,用于读出权限设置。
例如,运行以下命令:
控制台
C:\tools\Sysinternals\accesschk.exe -ld
然后,可以看到以下显示已设置 SYNCHRONIZE 位的结果:
输出
[2] ACCESS_ALLOWED_ACE_TYPE: BUILTIN\Users [OBJECT_INHERIT_ACE] [CONTAINER_INHERIT_ACE] [INHERITED_ACE] FILE_LIST_DIRECTORY FILE_READ_ATTRIBUTES FILE_READ_EA FILE_TRAVERSE SYNCHRONIZE READ_CONTROL
请参阅 Windows SMB2 客户 端上 SYNCHRONIZE 位的行为 。
第三方信息免责声明
本文中提到的第三方产品由 Microsoft 以外的其他公司提供。 Microsoft 不对这些产品的性能或可靠性提供任何明示或暗示性担保。
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://hqyman.cn/post/5175.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~