会话超时后的Grails Spring安全重定向

时间:2013-01-11 16:58:34

标签: grails spring-security session-timeout

我遇到了会话超时问题。在我的grails应用程序中,用户在会话超时后登录,但随后进入最后编辑的页面。我想阻止它并将它们发送到特定的URL。我怎样才能实现这一点,我无法在spring安全文档中找到一些内容。

问候。

2 个答案:

答案 0 :(得分:2)

根据docs,您似乎可以使用以下组合:

successHandler.defaultTargetUrl="/whatever/url/you/want"
successHandler.alwaysUseDefault=true

答案 1 :(得分:1)

默认情况下,spring security会在成功登录后转发原始请求。您可以通过将以下内容添加到Config.groovy

来防止这种情况发生
grails.plugins.springsecurity.successHandler.alwaysUseDefault = true
grails.plugins.springsecurity.successHandler.alwaysUseDefaultTargetUrl = true
grails.plugins.springsecurity.successHandler.defaultTargetUrl = '/my/default/url'

这两个属性听起来应该是一样的,但在我的情况下它只有在我同时拥有它们时才有效。也许你可以删除其中一个并让它工作......

这将在您登录时改变行为,而不仅仅是在超时后。如果您需要更加动态的解决方案,我想您必须深入了解Spring安全源代码......