3

我需要在 Windows 域和 J2EE Web 应用程序之间实现 SSO。

我一直在思考这会对 Web 应用程序的会话超时产生什么影响。我们有 2 小时的休息时间。

如果我们实现一个无缝的 SSO,那么我认为它可能会让用户感到困惑。

SSO 将使 Web 应用程序看起来立即可用。

我担心他们会开始填写表格然后去吃午饭(或其他东西)并在他们的会话超时后回来。但是,这可能不会立即明显发生,因为 SSO 只会再次签署它们(但现在有一个新会话)。

有没有人有这样的经历以及如何处理它?我们是否只需要实现某种形式的额外消息来告诉用户他们之前的会话已经超时并且他们的工作已经丢失?

4

3 回答 3

2

我认为如果用户的会话被重置,你肯定需要弹出某种警报框。让他们单击消息上的“确定”并将他们重定向到主页。

另外,如果你按照我的想法去做,我认为 2 小时的超时听起来是个坏主意。您的意思是用户在会话超时之前有 2 个小时从登录到工作?设置类似 10 分钟的超时时间不是更有意义,但是每当用户在该会话中发送新请求时计时器就会重置。

于 2009-04-30T10:01:35.293 回答
0

超时不是从登录开始测量的静态固定时间,而是对不活动的动态测量。

在我们拥有此功能的网站上,大约 10 分钟后,网页会返回登录页面(使用 JS),用户可以根据需要重新开始。

如果他们忙于一个漫长的过程,他们正在审查结果或其他事情,那么检查鼠标移动或类似的一些微妙的键,表明他们仍然很忙。

于 2009-04-30T10:19:59.553 回答
0

老问题,但万一有人遇到它:

努力在服务器会话中不存储任何状态。客户,很好;后端服务器持久性(如数据库),很好。只是没有任何东西会丢失。当用户被无缝地重新认证时,他们不会注意到这个开关。超时的持续时间变得无关紧要。

六年后的今天,这个答案实际上更加可行,因为有几个前端框架可以为您存储数据。您仍然可以在服务器上使用Spring Security(比如说),因为新会话的身份验证仍然存在;它应该即时重新生成您的安全信息(SecurityContext、UserDetails 等)。无论请求获取或发送数据,都应该“正常工作”。

于 2015-03-19T15:52:29.003 回答