IdentityServer4 - 会话管理和空闲超时或不活动时段

时间:2017-03-20 09:56:37

标签: session asp.net-core identityserver4 asp.net-identity-3 asp.net-core-identity

我已经为IdentityServer配置了几个客户端,其中一些是使用Hybrid flow的本机应用程序(桌面,iOS,并不重要)。

我想强制退出超过X分钟的用户,如果可能,再次重定向到登录页面。
我可以通过使用带有RefreshTokenExpiration = trueSlidingRefreshTokenLifetime = *DesiredTimeoutTime*的短期刷新令牌来实现此目的,并且在每次调用API之前,客户端首先刷新用户的访问令牌。实际上,这会将会话管理空闲超时重载到刷新令牌的到期时间 但这不是它的设计使用方式。刷新令牌应该是长寿命的。
而且,对于API的每次调用,客户端都会刷新它的访问令牌,因为我使用持久性存储来获取我的授权(特别是使用内置EF的SQL Server)支持),这意味着我在ID数据库上的表现比我想要的要多。

我指定我使用的是本机应用程序,因为我知道它(可能)可以使用cookie实现基于浏览器的应用程序,但同样,那些与本机应用程序不能很好地工作(对于我所知道的所有知识)如果我错了,请随时纠正我。如果有可能以某种方式实现饼干 - 我很乐意听到。
一般来说,我对Identity.Application cookieAccess Token的关系缺乏了解。这有点令人困惑。

无论如何,我正在寻找更优雅的解决方案,如果有的话 感谢。

0 个答案:

没有答案