Web应用安全课件:HTTPSession.pptxVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
HTTP Session HTTP Session Http Session 服务端的技术 服务器会为每一个用户 创建一个独立的Http Session Http Session原理 当用户第一次访问Servlet时,服务器端会给用户创建一个独立的Session 并且生成一个SessionID,这个SessionID在响应浏览器的时候会被装进cookie中,从而被保存到浏览器中 当用户再一次访问Servlet时,请求中会携带着cookie中的SessionID去访问 服务器会根据这个SessionID去查看是否有对应的Session对象 有就拿出来使用;没有就创建一个Session(相当于用户第一次访问) HTTP Session 域的范围: Context域 Session域 Request域 Session域 只要会话不结束就会存在 但是Session有默认的存活时间(30分钟) 需要注意的是,一个Session的概念需要包括特定的客户端,特定的服务器端以及不中断的操作时间。A用户和C服务器建立连接时所处的Session同B用户和C服务器建立连接时所处的Session是两个不同的Session。 当客户端第一次访问服务器的时候,此时客户端的请求中不携带任何标识给服务器,所以此时服务器无法找到与之对应的session,所以会新建session对象,当服务器进行响应的时候,服务器会将session标识放到响应头的Set-Cookie中,会以key-value的形式返回给客户端 例:JSESSIONID=7F149950097E7B5B41B390436497CD21;其中JSESSIONID是固定的,而后面的value值对应的则是给该客户端新创建的session的ID,之后浏览器再次进行服务器访问的时候,客户端会将此key-value放到cookie中一并请求服务器,服务器就会根据此ID寻找对应的session对象了;(当浏览器关闭后,会话结束,由于cookie消失所以对应的session对象标识消失,而对应的session依然存在,但已经成为报废数据等待GC回收了)对应session的ID可以利用此方法得到:session.getId(); 1、session进行身份验证的原理 HTTP Session 对上图的说明: client与server建立一个连接,这种连接是底层的 client发送request到server,等待server的answer server处理request,将处理结果返还给client,这个结果包括status code、其它data 2、client-server connection HTTP Session 一、什么时候创建Http Session 1).对于JSP:   是否浏览器访问服务端的任何一个JSP或Servlet,服务器都会立即创建一个Http Session对象呢? 不一定。   ①.若当前的JSP或(Servlet)是客户端访问的当前WEB应用的第一个资源,且JSP的page指定的session属性为false,则服务器就不会为JSP创建一个Http Session对象;   ②.若当前JSP不是客户端访问的当前WEB应用的第一个资源,且其他页面已经创建一个Http Session对象,则服务器也不会为当前JSP创建一个新的Http Session对象,而会把和当前会话关联的那个Http Session对象返回给当前的JSP页面。 3、Http Session生命周期 HTTP Session 2).page指令的session=false到底表示什么意思:当前JSP页面禁用session隐含变量!但可以使用其他的显式的对象 3).对于Servlet而言:   若Servlet是客户端访问的第一个WEB应用的资源,则只有调用了request.getSession()或request.getSession(true) 才会创建Http Session对象 4). 在Servlet中如何获取Http Session对象?   request.getSession(boolean create):create为false,若没有和当前JSP页面关联的Http Session对象,则返回null;若有返回true create为true一定返回一个HTTP Session对象。若没有和昂前JSP页面关联的Session对象,则服务器创建一个新的Session对象返回,若有,则直接返回关联。request.getSession()等同于request.getSession(true) 3、Http Session生命周期 HTTP Sess

文档评论(0)

ZuiFeng + 关注
实名认证
文档贡献者

分享文档,资源共享

1亿VIP精品文档

相关文档