首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HttpSession (HttpSession)是否验证IP地址?

HttpSession (HttpSession)是否验证IP地址?
EN

Stack Overflow用户
提问于 2015-05-08 04:48:06
回答 4查看 2.7K关注 0票数 1

使用Java通过HttpSession接口管理的会话,将创建一个cookie JSESSIONID。这个cookie用于验证用户是否有创建的会话。

但是,Servlet是否验证这个JSESSIONID值来自创建会话的同一台机器?

我知道XSS (跨站点脚本)攻击可以窃取用户的会话cookie,但是当恶意用户将JSESSIONID发送回服务器时,他/她能够检索会话的内容吗?或者服务器验证发送JSESSIONID的用户的IP?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-05-08 04:51:25

当为用户创建会话时,

  • 在服务器端创建会话id。
  • 此会话id被发送到发送请求的浏览器。
  • 这个id存储在一个名为JSESSIONID的cookie中。
  • 浏览器为后续请求发送此cookie。
  • 服务器端知道会话id,并与cookie中的会话id进行验证。
  • 未检查ip地址是否为后续请求。会话使用jsessionid标识。
票数 1
EN

Stack Overflow用户

发布于 2015-05-08 04:59:09

不,它没有检查在同一会话中后续请求之间的ipaddress是否相同。但是,您可以获取该ip地址并在会话中保存其他名称,并可以通过sel进行检查。

票数 2
EN

Stack Overflow用户

发布于 2015-05-08 04:58:02

HTTP是一个无状态协议,在每个请求中传递JSESSIONID值(无论是cookie形式还是URL参数),以指示服务器请求属于由JSESSIONID值表示的会话。服务器使用JSESSIONID作为键维护会话对象,该键用于将会话对象与请求关联。如果这是您所说的“服务器验证发送JSESSIONID的用户的ip”,则不会维护客户端IP和会话id之间的关系。因此,它不会对给定的会话id执行客户端IP验证。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30115960

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档