VS2019运行任意项目均突发401.2 - Unauthorized未授权错误如何解决
401.2报错本质是IIS服务端身份验证配置本身无效导致的拒绝访问,不属于账号凭证错误的认证失败类问题,结合你新建项目仍复现的特征,问题基本可定位在全局配置层面,而非单个项目配置问题
已可排除的故障范围
- 单个项目配置异常:已调整项目身份验证属性、删除
<deny users="?" />规则、新建项目仍复现,可排除单项目web.config或项目属性问题 - 端口/虚拟目录冲突:已尝试更换端口、重建虚拟目录,可排除该类资源冲突问题
高概率故障根因
- IIS Express全局配置文件损坏
Visual Studio 2019默认使用的IIS Express全局配置存放在C:\Users\<你的系统用户名>\Documents\IISExpress\config\applicationhost.config,如果该文件被第三方软件篡改、对应身份验证模块注册失效、或者文件访问权限异常,会导致所有运行在IIS Express上的项目统一触发身份验证拦截。 - Windows系统身份验证组件异常
如果项目启用了Windows身份验证,系统对应身份验证组件损坏、本地用户组权限被修改、或者域策略变动,会导致IIS无法正常读取当前登录用户的身份信息,触发强制登录弹窗。 - VS2019 Web开发负载组件损坏
最近更新VS补丁、卸载组件或者第三方清理软件误删文件,都可能导致Web开发负载的相关组件配置异常,启动调试时默认给所有项目注入强制身份验证规则。
待排查操作步骤
- 重置IIS Express全局配置:关闭所有VS进程,将
C:\Users\<你的系统用户名>\Documents\IISExpress\config文件夹重命名为config_bak,重新启动VS运行项目,VS会自动生成全新的默认全局配置,验证故障是否消失 - 检查Windows IIS组件状态:打开「控制面板-程序-启用或关闭Windows功能」,找到「Internet Information Services-万维网服务-安全性」,确认你需要使用的身份验证方式(匿名身份验证/Windows身份验证等)已正常勾选,缺失的话勾选后重启系统再测试
- 修复VS Web开发组件:打开Visual Studio Installer,选择VS2019对应的「修改」选项,确认「ASP.NET和Web开发」工作负载已完整安装,点击「修改」等待组件修复完成后重启VS测试
- 验证本地用户权限:运行
lusrmgr.msc打开本地用户和组控制台,确认当前登录用户已加入「Administrators」或「IIS_IUSRS」用户组;如果是域环境设备,联系管理员确认最近是否调整过域用户的本地访问权限 - 临时禁用安全软件测试:部分安全软件的网络拦截规则会将IIS Express的本地请求识别为非法访问,触发身份验证拦截,禁用后如果故障消失,将VS2019和IIS Express加入安全软件白名单即可
内容的提问来源于stack exchange,提问作者Beengie
相关产品推荐
相关产品推荐

