当用户进行身份验证时重置会话 cookie 被认为是一种良好的安全实践。
如何用 Java 做到这一点?
到目前为止我的尝试是成功的,但我想知道是否有更好的方法:
public static HttpSession resetSessionId(HttpSession session,
HttpServletRequest request) {
session.invalidate();
session = request.getSession(true);
return session;
}
我只传递从中获取会话的请求。如果会话尚不存在,则仅创建一个会话来使其无效是没有意义的。如果会话刚刚由容器创建(由于用户第一个 http 请求直接在登录表单上),这也适用。
public static ... (HttpServletRequest request) {
HttpSession session = request.getSession(false);
if (session!=null && !session.isNew()) {
session.invalidate();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)