2012-07-30 47 views
6

有时,Spring Security将jsessionid附加到我的URL的末尾。如果它一直发生或从不发生,我不会那么烦扰,但它似乎几乎是随机的。我想知道为什么会发生这种情况,如果它有什么关系记住我不能正确使用LDAP?有时附加了jsessionid的URL Grails/Spring Security

http://localhost:8080/myapplication/login/auth;jsessionid=A07D52CB78DB999947F3EED1917D60F6

+1

我看到即使没有LDAP有关。我认为它与一些浏览器错误有关,它们会阻止设置cookie而不重定向到另一个URL。 – Chris 2012-07-30 20:48:13

回答

5

JSESSIONID由Tomcat的创建(或其他Web容器,见docs),它不是使用Spring Security。 JSESSIONID是http会话的唯一ID,用于应用程序使用会话(在请求期间放置/从sesson读取一些数据)的情况,但不存在会话cookie。在这种情况下,服务器尝试两种方式:设置cookie并将参数追加到所有链接。

多数是因为:

  • 从浏览器的第一个请求(无饼干在所有)
  • 浏览器发送无效的会话ID(例如,当服务器重新启动,并且现有会话变为无效)

而这样的请求会话在服务器端使用(并创建了新的会话)。

PS我不知道,它可以为LDAP身份验证问题

+0

很高兴知道。能够消除这一点帮助我缩小了我主要问题的原因。谢谢! – ubiquibacon 2012-08-01 19:50:06