Identity Server 和 OpenId Connect 闲置一段时间后自动注销

Dwa*_*all 5 logout openid-connect identityserver3 implicit-flow angular

我目前有一个Angular 2 SPA调用Web API。我正在使用使用Identity Server 3和 oidc-client-js javascript 库实现的安全令牌服务来提供使用 Web API 的身份验证和授权。

该协议是使用隐式流的OpenId Connect

我根据这篇文章实现了静默令牌刷新。这是为了在调用 API 时始终拥有当前的 Access_Token。

为了在一段时间不活动后注销用户,我使用 JavaScript 计时器从 Oidc_Client_Js 库调用UserManager.signoutRedirect方法。

这是可行的,但我担心这可能会受到操纵,因为用户的会话是由客户端上的 Javascript 控制的。

我的问题是,是否有任何推荐的技术可以在使用 OpenId Connect 保护的单页应用程序上应用“滚动”自动注销?