Azure B2C-使用单一注销将返回302状态代码而不是200

问题描述

首先,我要做,使我的应用可以使用SLO,使用注销URL,带有B2C自定义策略的OIDC JWT令牌等。

但是,来自this Microsoft doc

应用程序必须通过清除标识用户的任何会话并返回200响应来响应此请求。

不幸的是,使用以下代码进行静注销(代码大部分取自Microsoft B2C示例),我收到了302返回,其中似乎是应用程序的OIDC PostlogoutRedirectUri值。尽管我努力使返回200 OK,但它仍通过重定向将302发送回浏览器。我需要对代码进行快速修复以使其停止重定向吗?

        [HttpGet]
        public ActionResult logoffSilent()
        {
            var authTypes = HttpContext.GetowinContext().Authentication.GetAuthenticationTypes();
            HttpContext.GetowinContext().Authentication.SignOut(authTypes.Select(t => t.AuthenticationType).ToArray());
            Request.GetowinContext().Authentication.GetAuthenticationTypes();
            HttpContext.Response.StatusCode = 200;

            return new HttpStatusCodeResult(HttpStatusCode.OK);
        }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)