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

.NET Core 5 MVC对接微软身份提供商登出自定义重定向URL问题咨询

.NET Core 5 MVC Azure AD 登出自定义重定向解决方案

前提校验

  • 先修正appsettings.json配置的笔误:你现有配置中SignedOutCallbackPath 键名末尾多了一个空格,删除空格保证键名正确:
"CallbackPath": "/signin-oidc",
"SignedOutCallbackPath": "/signout-callback-oidc"
  • 登录Azure Portal进入对应应用注册页,在「身份验证」-「登出URL」配置中添加你需要跳转的目标页面完整地址(包含域名,如https://your-app-domain/Home/Index),保存配置。

方案一:自定义登出Action(最稳定可控)

你用的AddMicrosoftIdentityUI()提供了默认的登出逻辑,你可以自定义AccountController覆盖默认行为:

  1. 新建Controllers/AccountController.cs,代码如下:
using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Authentication.Cookies;
using Microsoft.AspNetCore.Authentication.OpenIdConnect;
using Microsoft.AspNetCore.Mvc;

namespace YourAppNamespace.Controllers
{
    public class AccountController : Controller
    {
        public IActionResult SignOut()
        {
            // 替换为你要跳转的目标页面地址,此处示例跳转到首页
            var redirectTarget = Url.Action("Index", "Home", null, Request.Scheme);
            return SignOut(
                new AuthenticationProperties
                {
                    RedirectUri = redirectTarget
                },
                CookieAuthenticationDefaults.AuthenticationScheme,
                OpenIdConnectDefaults.AuthenticationScheme
            );
        }
    }
}
  1. 将页面上原有登出链接替换为指向/Account/SignOut即可。

方案二:全局配置默认重定向地址(无需修改登出链接)

如果不想自定义Controller,可以直接在Startup.cs的ConfigureServices方法中配置OpenIdConnect选项指定全局默认登出跳转地址:

services.AddMicrosoftIdentityWebAppAuthentication(Configuration);

// 新增这段配置
services.Configure<OpenIdConnectOptions>(OpenIdConnectDefaults.AuthenticationScheme, options =>
{
    // 此处替换为你的目标页面路径
    options.PostLogoutRedirectUri = "/Home/Index";
});

services.AddControllersWithViews(options =>
{
    var policy = new AuthorizationPolicyBuilder()
        .RequireAuthenticatedUser()
        .Build();
    options.Filters.Add(new AuthorizeFilter(policy));
}).AddMicrosoftIdentityUI();

注意:SignedOutCallbackPath是Azure AD和应用完成登出交互的内部回调路径,不要修改该值,也不要和你自定义的登出跳转地址混淆


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 13:36:10