如果我们使用app1而不使用其他,TGT即将到期

时间:2011-06-07 22:57:14

标签: spring-security cas

我们对票证授予票证到期政策有疑问。我们正在使用cas身份验证。 TGT在2小时后过期,而java会话在30分钟后过期。我们的问题是,如果用户仅使用Web应用程序超过两个小时而不是尝试使用其他Web应用程序,则票证授予票证已到期,因此用户必须重新登录,尽管他可以在第一个Web应用程序中工作。

当用户在第一个Web应用程序中工作时,有没有办法续订票证授予票据?

1 个答案:

答案 0 :(得分:1)

可悲的是,从CAS 3.4(当我正在研究一个非常类似的问题时)做了一些魔术时,答案是否定的。

如果你必须实现这个功能,我遇到的最好的想法(一个同事提出它,而不是我)是让你的应用程序的每一页都使用Javascript来“ping”您的CAS服务器(一个不关心返回的简单AJAX请求将起作用),并实现自定义TGT过期策略,该策略跟踪上次ping回并在最后一次ping超过X秒之前使该过期失效。但是,这种方法需要在CAS框架中有相当多的钩子,我建议不要这样做。我提供代码但是因为我真的挖了CAS的内部部件已经太久了。