Identity Server 4 - 注销

Identity Server 4 - log out

我按照这个例子 on Github 关于 Identity Server 4 和 Entity Framework。

那我就跟着这个guide to get user from database and it works. But there is a problem during logging out user in Identity Server (http://localhost:5000/account/logout)。特别是当我在注销后 return 在主页中时(有效)用户名出现在视图中。

@if (!string.IsNullOrWhiteSpace(name))
        {
            <ul class="nav navbar-nav">
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">@name <b class="caret"></b></a>
                    <ul class="dropdown-menu">
                        <li><a asp-action="Logout" asp-controller="Account">Logout</a></li>
                    </ul>
                </li>
            </ul>
        }

是否是可用指南的源代码错误here?有人可以帮助我吗?

我知道这是旧的,但我希望它能帮助别人。

注销时确保您的控制器没有return操作结果。注销在你的控制器中应该是这样的:

 public async Task Logout()
        {
            await HttpContext.SignOutAsync("Cookies");
            await HttpContext.SignOutAsync("oidc");
        }

您的身份服务器中的回调应该会将您重定向回该站点。