问题根源是windows winhttp服务缓存的旧webdav凭据;需依次执行netsh winhttp reset proxy、重启winhttpautoproxysvc服务、清理注册表中defaultpassword等残留项,并彻底卸载重建映射,禁用自动保存后再启用。

当你反复尝试访问映射的WebDAV网络驱动器(如Z:盘指向https://webdav.company.com/share)却持续弹出“用户尚未通过验证”或“未执行要求的作业”错误,且确认密码正确、服务器在线、防火墙放行时,问题极大概率出在Windows底层残留的旧版WebDAV凭据上——这些凭据被WinHTTP服务锁定缓存,图形界面完全不可见,也无法通过常规凭据管理器删除。
定位并强制清除WinHTTP绑定的WebDAV凭据
WebDAV凭据不走标准凭据管理器路径,而是由Windows HTTP服务(WinHTTP)独立维护,必须用专用命令触发重置。
右键“开始”按钮 → 选择“终端(管理员)” → 输入以下命令并回车:
netsh winhttp reset proxy
该命令会清空WinHTTP全局代理配置及关联的所有认证上下文,包括已失效的WebDAV会话令牌。【执行后无需重启,但所有依赖WinHTTP的应用(如PowerShell Invoke-WebRequest、部分备份软件)将临时丢失代理设置】
紧接着运行:
net stop winhttpautoproxysvc & net start winhttpautoproxysvc
重启WinHTTP自动代理服务,确保新配置立即生效。若提示“服务名无效”,说明系统未启用该服务,可跳过此步。
删除注册表中硬编码的WebDAV目标凭据
部分旧版WebDAV映射会在注册表留下持久化凭据条目,尤其当使用过“记住我的凭据”选项时,它们藏在LSA密钥下,图形工具无法触及。
按下Win + R → 输入regedit → 回车 → 导航至:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
在右侧查找名为DefaultPassword、DefaultUserName、DefaultDomainName的字符串值。若存在且其值明显对应已废弃的WebDAV服务器(例如DomainName = webdav-old.corp),【右键删除该整行,不要修改内容】。
继续导航至:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
检查ProxyServer、ProxyOverride等键值是否包含旧WebDAV域名(如webdav.legacy.com)。若有,双击编辑,清空其数据字段,仅保留空白。
方法一:彻底卸载并重建WebDAV映射连接
这是最干净的收尾操作,能绕过所有缓存机制,强制系统生成全新凭据链。
第一步:断开所有WebDAV驱动器
在管理员终端中执行:
net use * /delete /y
第二步:清除SMB与WebDAV混合缓存
执行:
certutil -urlcache * delete → 清除URL缓存中所有认证票据
nbtstat -R → 刷新NetBIOS名称解析表
第三步:用IP地址或FQDN直连,禁用自动保存
打开文件资源管理器 → 地址栏输入完整WebDAV地址(如https://192.168.5.200/remote.php/webdav/)→ 回车 → 在弹出的登录框中【务必取消勾选“记住我的凭据”】 → 输入当前有效账号密码 → 点击确定。
第四步:仅在此成功登录后,再右键“此电脑” → “映射网络驱动器” → 手动指定盘符 → 路径填入同一WebDAV地址 → 勾选“重新连接” → 【此时才勾选“记住我的凭据”】。











