IIS升级至Windows 2022后WebDAVModule无法查询创作规则问题
IIS 10 WebDAV 创作规则查询失败(错误0x80070534):域转工作组后问题
问题概述
从Windows Server 2012(IIS 8.5)迁移至Windows Server 2022(IIS 10),测试环境克隆服务器因无法访问原域,加入WORKGROUP工作组。服务器托管的文件上传网关中,POST请求正常,但PUT请求(由WebDAV处理,搭配自定义HttpModule)失败。失败请求追踪显示WebDAVModule报错:Cannot query authoring rules,错误码0x80070534(账户名与安全ID无映射),且该报错发生在Basic认证成功之后。
已排查动作:
- 确认WebDAV创作规则存在并删除重建
- Web应用以LocalSystem身份运行
排查与解决步骤
1. 清理Web.config中的残留域身份引用
即使重建创作规则,站点根目录的web.config可能仍保留原域账户/SID:
- 打开站点对应的
web.config文件,定位<system.webServer><webdav><authoringRules>节点 - 检查规则中的
users或roles属性,确保仅使用本地工作组账户(如WORKGROUP\用户名、BUILTIN\Administrators),删除任何指向原域的无效引用 - 保存配置后执行
iisreset重启IIS
2. 确认WebDAV创作规则的身份配置
IIS 10对WebDAV规则的身份验证上下文校验更严格:
- 打开IIS管理器,进入站点的WebDAV创作规则配置页
- 逐一检查每条规则的用户/组,确保选择的是本地工作组内的有效身份,而非原域账户
- 切换到WebDAV设置,确认允许创作已启用,且身份验证提供程序仅保留Basic认证(与生产环境一致)
3. 检查应用程序池的用户配置
LocalSystem账户的配置可能影响WebDAV的身份映射:
- 进入应用程序池的高级设置,确认标识为LocalSystem,且加载用户配置文件设置为
True - 检查站点根目录的文件系统权限,确保LocalSystem和
BUILTIN\IIS_IUSRS组拥有读取、写入权限
4. 清理IIS配置数据库的残留数据
IIS的applicationHost.config可能存储了原域相关的无效身份映射:
- 打开
C:\Windows\System32\inetsrv\config\applicationHost.config文件 - 搜索原域名称或相关SID,删除所有无效的身份引用
- 执行
iisreset重启IIS服务
内容的提问来源于stack exchange,提问作者Yossi G.
相关产品推荐
相关产品推荐

