无状态webapp中的Spring安全性?

无状态webapp中的Spring安全性?,spring,spring-security,Spring,Spring Security,可能重复: 我刚刚开始在3.1版的Spring Security上进行试验,我想知道如何使用无状态webapp实现身份验证 我想到了http basic和digest,我已经试过了,但我不喜欢在不关闭浏览器的情况下无法像表单身份验证那样注销 目前,我有一个使用spring security的基于表单的身份验证的无状态webapp(它可能通过在会话中存储身份验证来实现状态化?),我想知道我可以研究哪些策略来让spring security在不使用http会话的情况下工作 我意识到有一个,但肯定还

可能重复:

我刚刚开始在3.1版的Spring Security上进行试验,我想知道如何使用无状态webapp实现身份验证

我想到了http basic和digest,我已经试过了,但我不喜欢在不关闭浏览器的情况下无法像表单身份验证那样注销

目前,我有一个使用spring security的基于表单的身份验证的无状态webapp(它可能通过在会话中存储身份验证来实现状态化?),我想知道我可以研究哪些策略来让spring security在不使用http会话的情况下工作

我意识到有一个
,但肯定还有一些事情需要做,因为在我尝试之后,应用程序停止正常工作,在访问受保护的资源时不断对我进行身份验证

这是我的配置:

<http use-expressions="true" create-session="stateless">
    <form-login login-page="/login" 
        login-processing-url="/static/j_spring_security_check"
        authentication-failure-url="/login?login_error=t" />
    <logout logout-url="/static/j_spring_security_logout"/>

    <intercept-url pattern="/person/test/**" 
        access="isAuthenticated() and principal.username=='albertkam'"
    />
    <intercept-url pattern="/person/**" access="hasRole('ROLE_NORMAL')"/>

    <remember-me
        key="spitterKey"
        token-validity-seconds="2419200"/>
</http>

使用
创建会话=“无状态”

  • 访问
  • 转到登录页面
  • 登录后返回主页url(我希望它返回到受保护的资源)
  • 创建会话=“无状态”
    ,默认为ifRequired(有状态):

  • 访问
  • 转到登录页
  • 登录后返回受保护的url blah(这是正确的行为,但有状态)

  • 您可以在
    上使用
    始终使用default target=“false”
    ,以防止在成功登录后进入默认页面

    嗨,我试过你的建议,但它仍然会出现在无国籍者的主页上。我认为这不是问题所在,因为没有无状态属性值,流可以正常工作。哦,很抱歉知道,我认为总是使用default target=“false”在无状态的情况下也应该可以工作。这在本[主题][1][1]中得到了回答: