ServiceStack中的身份验证,存储库和缓存提供程序提供了一种向Web应用程序添加登录会话的简单方法,几乎不需要其他代码.我发现可以配置身份验证提供程序的会话超时,例如:
new CredentialsAuthProvider { SessionExpiry = TimeSpan.FromMinutes(10) }
Run Code Online (Sandbox Code Playgroud)
这提供了从登录点到期的到期日.如果我们正在开发一个必须在短时间内将用户注销的安全系统,那么我们会将其从默认的2周更改为类似上面的示例.但是这有一个问题,即无论用户是否仍在与应用程序进行交互,登录用户的10分钟将被踢出.
是否有一种简单的方法可以告诉会话提供者延长调用服务时的到期时间?
理想情况下,它允许我们扩展特定服务/请求的会话(以便仅在用户主动与应用程序交互时扩展会话,因此可以忽略轮询的服务).
更新
基于mythz给出的答案,我们现在有一个简单的解决方案,通过扩展ResponseFilterAttribute来提供我们所需的控制级别.