cookies和session在实际应用中的区别

分类:计算机/网络> & gt因特网

问题描述:

cookies和session在实际应用中有什么区别?

有人说用cookies比session好,因为session增加了服务器的负担。这是正确的吗?

cookies不能替代的会话功能有哪些?

分析:

会话变量保存在客户端主机的内存中,并在浏览器关闭或会话脚本到期时自动清除。

cookie保存在客户端主机的硬盘上,cookie的存在期限可以自己设定。除非设置了临时cookie,否则浏览器关闭后,cookie信息仍会保存在主机的硬盘上。

Cookies的安全性能一直备受争议。虽然Cookies存储在这台机器上,但是它们的信息是完全可见的,并且很容易在本地编辑,这通常会导致许多安全问题。所以Cookies到底该不该用,怎么用,是有底线需要给的。

我们先来看看网站的敏感数据。

登录验证信息。通常,session ("logon") = true或false。

用户的各种隐私信息,如姓名等。在某些情况下,需要保存在会话中。

需要在页面之间传递的内容信息,比如调查,需要分成几个步骤。每个步骤的信息都保存在会话中,并最终更新到数据库中。

当然,还会有更多。下面是一些典型的。

如果一个人被撤回,不想接触会话,因为他认为如果用户不小心关闭了浏览器,所有之前保存的数据都会丢失。于是,出于好心,他决定用Cookies来存储所有这些使用Session的地方,这是完全可行的,基本操作也和使用Session一模一样。那么,下面是对以上三个典型例子的分析。

显然,只要一个故意的非法入侵者知道网站验证登录信息的Session变量是什么,他就可以提前编辑cookie,放入cookie目录中,从而顺利通过验证。这很可怕吗?

cookie是完全可见的,即使程序员设置了cookie的生命周期(比如只在用户会话期间有效),它们也是不安全的。假设用户忘记关闭浏览器或者有恶意的人把用户打昏了,那么用户的损失将是巨大的。

像上面这种,很容易被别人窃取重要的私人信息。但是,还有一个问题,就是信息量可能过大,使得Cookies的文件大小急剧增加。这不是用户希望看到的。

很明显,饼干不是那么好的饼干。但是,Cookies的存在当然有它的道理。它给了程序员更大的空间来发挥他们的编程才能。所以,使用Cookies是有底线的。总的来说,这个底线遵循以下原则。

不要保存私人信息。

对于任何重要的数据,最好以加密的形式保存数据(最简单的可以是URLEncode,当然也可以是完美的可逆加密方式。可惜最好不要用md5加密)。

是否保存登录信息由用户选择。

不要对超过10K的数据使用Cookies。

不要用Cookies玩让客户惊喜的小游戏。

相关文章

应用程序、会话和Cookie之间的区别

xingworld/show.asp?根= 3 & ampbranch = 12 & amp;leaf = 58 & ampid=1751

判断Cookies是否开启。

xingworld/show.asp?root = 2 & ampbranch = 16 & amp;leaf = 82 & ampid=3754

确定访问者的浏览器是否支持JavaScript和Cookies。

xingworld/show.asp?root = 2 & ampbranch = 16 & amp;leaf = 82 & ampid=3732

无效会话对象的客户端解决方案

xingworld/show.asp?根= 3 & ampbranch = 12 & amp;leaf = 58 & ampid=1699

测试你的站点使用了多少会话和应用程序。

xingworld/show.asp?根= 3 & ampbranch = 12 & amp;leaf = 58 & ampid=1652

ASP中使用会话变量的利与弊

xingworld/show.asp?根= 3 & ampbranch = 12 & amp;leaf = 58 & ampid=1388

SessionID简介

xingworld/show.asp?根= 3 & ampbranch = 12 & amp;leaf = 58 & ampid=1313

如何获取所有会话变量

xingworld/show.asp?根= 3 & ampbranch = 12 & amp;leaf = 58 & ampid=1281

无需Golobal.asa和session即可实现在线编制。

xingworld/show.asp?根= 3 & ampbranch = 12 & amp;leaf = 59 & ampid=1287