Azure App Service中Easy Auth拦截Always On请求的解决方法咨询
解决方案
方法1:通过Azure CLI配置Easy Auth跳过AlwaysOn请求的授权
这是最直接的原生解决方案,利用App Service Easy Auth的内置参数,让User-Agent为AlwaysOn的请求绕过授权检查:
- 打开Azure CLI并登录账号后,可先执行以下命令查看当前应用的身份验证配置(可选,用于确认现有设置):
az webapp auth show --name <你的应用名称> --resource-group <资源组名称>
- 执行更新命令添加跳过规则:
az webapp auth update --name <你的应用名称> --resource-group <资源组名称> --set skipAuthForUserAgents="['AlwaysOn']"
配置生效后,所有带有AlwaysOn用户代理的请求会直接转发到你的.NET应用,其他请求(包括访问根路径的正常请求)仍会被Easy Auth强制拦截并要求授权。
验证配置效果
修改完成后等待1-2分钟让配置生效,然后查看AppServiceHTTPLogs:
- 检查User-Agent为
AlwaysOn的请求状态码是否变为200(或应用返回的正常状态) - 正常用户访问根路径时,仍会触发授权拦截(重定向到登录页或返回401,取决于你的Easy Auth具体配置)
注意事项
- 确保
AlwaysOn用户代理与日志中记录的完全一致,部分环境可能存在大小写差异,若日志中是alwayson则调整命令中的对应值 - 若习惯使用Azure Portal操作,也可以进入应用的「身份验证」配置页面,在「高级设置」的「跳过身份验证的用户代理」列表中添加
AlwaysOn
内容的提问来源于stack exchange,提问作者mortenbock
相关产品推荐
相关产品推荐

