You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Microsoft.Identity.Web从Azure B2C应用登出时出现HTTP 404错误如何解决

Azure B2C 登出报错排查步骤

  • 确认B2C应用注册的前端通道登出URL配置:必须填写完整的HTTPS地址,格式为https://<你的应用访问域名>/signout-callback-oidc,不允许仅填写路径,同时不需要修改默认的SignedOutCallbackPath配置,保持默认值/signout-callback-oidc即可,B2C场景不适配通用OIDC的/signout-oidc路径。
  • 检查服务注册代码是否适配B2C场景:确认Startup.cs/Program.cs中使用的是B2C专属的身份注册方法,示例代码:
services.AddMicrosoftIdentityWebAppAuthentication(Configuration, "AzureAdB2C")
    .EnableTokenAcquisitionToCallDownstreamApi()
    .AddInMemoryTokenCaches();

同时确认配置节点名称和appsettings.json中的对应节点一致,不要混用AzureAD和AzureAdB2C节点。

  • 检查登出链接的参数配置:你已将asp-area调整为MicrosoftIdentity,还需要在登出链接中显式传递B2C策略参数,示例代码:
<a asp-area="MicrosoftIdentity" asp-controller="Account" asp-action="SignOut" 
   asp-route-policy="B2C_1_<你实际使用的用户流/策略名称>">登出</a>

未携带策略参数是B2C登出报错的高频原因,缺失策略时B2C端无法匹配对应登出逻辑。

  • 核对appsettings.json的完整配置:确认AzureAdB2C节点下的Instance、Domain、ClientId、SignUpSignInPolicyId等参数全部正确,没有拼写错误,CallbackPath配置和应用注册中的重定向地址完全匹配。
  • 检查运行环境的HTTPS配置:B2C的所有回调地址必须使用HTTPS协议,本地调试时确认使用的是HTTPS端口,且应用注册中的地址与本地调试地址的端口完全一致。
  • 开启调试日志定位根因:在配置中把Microsoft.Identity.Web的日志级别调整为Debug,复现登出问题后查看日志输出的具体错误信息,可直接定位是地址不匹配、策略不存在还是权限类问题。

内容的提问来源于stack exchange,提问作者David Onyango

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 16:18:02