https cas 安全cookie

在cas中或其他web开发中,会碰到安全cookie的概念,因为CAS中TGT是存放在安全cookie中的。下面是安全cookie 的理解:

    Set-Cookie 的 secure 属性就是处理这方面的情况用的,它表示创建的 cookie 只能在 HTTPS 连接中被浏览器传递到服务器端进行会话验证,如果是 HTTP 连接则不会传递该信息,所以绝对不会被抓包到。

     在setSecure(true); 的情况下,只有https才传递到服务器端。http是不会传递的。

    j2ee servlet的接口中也定义了Cookie对象,也有其方法setSecue(false);

   关于setSecure的问题,在http连接下: 
  当setSecure(true)时,浏览器端的cookie会不会传递到服务器端? 
  当setSecure(true)时,服务器端的cookie会不会传递到浏览器端? 
   答案:1)不会 ; 2)会

    原理:服务器端的Cookie对象是java中的对象,请不要和浏览器端的cookie文件混淆了。服务器端的Cookie对象是方便java程序员包装一个浏览器端的cookie文件。一旦包装好,就放到response对象中,在转换成http头文件。在传递到浏览器端。这时就会在浏览器的临时文件中创建一个cookie文件。 
     但我们再次访问网页时,才查看浏览器端的cookie文件中的secure值,如果是true,但是http连接。这个cookie就不会传到服务器端。当然这个过程对浏览器是透明的。其他人是不会知道的。

    总结如下:cookie的secure值为true时,在http中是无效的;在https中才有效

猜你喜欢

转载自feiteyizu.iteye.com/blog/2243223