.NET 4.8 WebForms+Web API认证问题:API仍返回401未授权
解决ASP.NET WebForms(.NET 4.8)集成WebAPI时禁用API认证的问题
问题背景
维护基于.NET 4.8的旧版ASP.NET WebForms应用,该应用集成了WebAPI模块。WebForms部分采用Windows身份认证需保持原有配置,而WebAPI需要对Linux等各类客户端开放,暂时需要完全禁用API的认证(后续计划在API内实现JWT认证)。
目前遇到的问题是:已做多项配置调整,但API仍返回401未授权错误,仅Windows测试客户端设置UseDefaultCredentials=true时能正常获取200响应。
已尝试的无效配置
- 调整
web.config相关认证配置项 - 在
WebApiConfig中添加config.SuppressHostPrincipal() - 为API控制器及方法添加
[AllowAnonymous]特性
有效解决方案
需要在项目设置中启用匿名认证,即可实现无需认证访问WebAPI,同时不会影响WebForms原有的Windows身份认证功能。
内容的提问来源于stack exchange,提问作者PereVerti
相关产品推荐
相关产品推荐

