tomcat7 servlet代码中无法修改JSESSIONID在cookie的值吗

Cookie cookie = new Cookie("ACKEY", "123456");
cookie.setMaxAge(3600);
cookie.setPath("/api");
response.addCookie(cookie);

ACKEY 是存放sessionId的键,我这么修改完全不起作用。是tomcat容器不让修改吗?
登录成功后改变sessionId是为了防止会话劫持或者固定会话攻击。

阅读 4.5k
2 个回答

感谢还有人回答。 是因为之前没有生成session,所以addCookie不起作用。得先getSession()

在tomcat配置文件中加入如下配置:

<Context path="" docBase="" reloadable="false" sessionCookieName=“xxxxxxxxx” />

这样能改掉sessionid的key,能在会话劫持的情况下一定程度上起到混淆的作用。

clipboard.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题