【发布时间】:2020-04-27 05:46:49
【问题描述】:
Identity Server 和两个客户端 (SSO):.Net Core MVC 和 Nodejs。
当我使用 Nodejs 客户端登录时,刷新 MVC(第二个客户端)后,我得到了登录的 MVC 客户端。很好。 但是当我从 Nodejs 注销时,它会将反向通道注销 url 发送到 MVC 客户端。 Nodejs 没有注销问题。但是 MVC 客户端 - 浏览器刷新后它保持记录。 我阅读了this 和this 的帖子,但它们没有帮助。
在 MVC 启动时,我编写了以下代码:
options.Events = new OpenIdConnectEvents
{
OnTicketReceived = (e) =>
{
e.Properties.IsPersistent = true;
e.Properties.ExpiresUtc = DateTimeOffset.UtcNow.AddMinutes(2);
return Task.CompletedTask;
}
};
两分钟后,我刷新浏览器并将 MVC 重定向到 Idrsv 登录页面。它很好,但不安全(需要等待 2 分钟)。
我读到了userId claim cache,但我怀疑 - 如果有很多活动会话,那么缓存会非常大,应用程序会运行缓慢。
我可以使用前通道注销,但我读到了缺点,现在我怀疑了。
您更喜欢从 Identity Server 注销所有客户端?
【问题讨论】:
标签: asp.net-core single-sign-on identityserver4