我正在开发一个具有用户身份验证和授权的 vaadin 7 应用程序,该应用程序使用 jaas 和在应用程序服务器 (glassfish) 中定义的领域。
我有这个要求:
用户可以保持登录状态一段时间,这样他就不需要每次都输入密码。
我通过设置 http 会话的会话超时来做到这一点。vaadin 会话可以锁定一些资源,并且在锁定时,没有其他会话可以使用该资源。当 vaadin 会话关闭时,所有锁定的资源都会被释放。
我将心跳间隔设置为仅 15 秒。
我无法同时满足这两个要求。如果我将http会话超时设置为一分钟,则在关闭浏览器后一分钟释放资源,但下一次用户没有经过身份验证。
如果我将 https 会话超时设置为某些天,则这次用户已通过身份验证,但 vaadin 会话在 3 次错过心跳后不会立即关闭。只有当用户下次使用相同的 http 会话使用该应用程序时,它才会关闭。
怎么可能同时满足这两个要求?
这里有更多关于我正在使用的技术的信息:
- 玻璃鱼 4
- 网络应用程序 3.1
- vaadin 7.1.7
- vaadin-cdi 1.0-快照
谢谢你的帮助