【问题标题】:Spring Security session-management setting and IllegalStateExceptionSpring Security 会话管理设置和 IllegalStateException
【发布时间】:2011-01-09 10:02:41
【问题描述】:

我正在尝试在我的 Spring Security 命名空间配置中添加 <session-management>,以便在会话超时时提供与登录页面不同的消息。一旦我将它添加到我的配置中,它就会在我访问应用程序时开始抛出“IllegalStateException:在响应提交后无法创建会话”。

我正在使用 Spring Security 3 和 Tomcat 6。这是我的配置:

<http>
    <intercept-url pattern="/go.htm" access="ROLE_RESPONDENT" />
    <intercept-url pattern="/complete.htm" access="ROLE_RESPONDENT" />                          
    <intercept-url pattern="/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />
    <form-login login-processing-url="/j_spring_security_check" 
                login-page="/login.htm" 
                authentication-failure-url="/login.htm?error=true" 
                default-target-url="/go.htm"
    />      
    <anonymous/>
    <logout logout-success-url="/logout_message.htm"/>  
    <session-management invalid-session-url="/login.htm" />     

</http>

在我添加 &lt;session-management&gt; 行之前,一切都很好。我错过了什么?

【问题讨论】:

    标签: spring-security session-timeout


    【解决方案1】:

    这对我有用

    <session-management invalid-session-url="/taac/login">
        <concurrency-control max-sessions="1" error-if-maximum-exceeded="true" />
    </session-management>
    

    【讨论】:

      【解决方案2】:

      也许在&lt;http&gt; 标记中包含auto-config="true" 属性会有所帮助,但您可能缺少一些必需的过滤器或设置。

      【讨论】:

        【解决方案3】:

        你可能遇到了这个错误:

        https://jira.springsource.org/browse/SEC-1346

        尝试使用最新版本 (3.0.2.RELEASE)。

        【讨论】:

          猜你喜欢
          • 2016-04-26
          • 1970-01-01
          • 2012-05-25
          • 2015-06-23
          • 2019-05-09
          • 2014-11-27
          • 2011-04-08
          • 2016-08-16
          相关资源
          最近更新 更多