网络:cookie和session
cookie翻译为点心,重在突出小,在网络中表示一些小的数据包。
cookie是服务器发送到用户浏览器上,并保存在浏览器中的一小块数据。cookie被保存后,在浏览器向同一服务器再次发起请求时,数据包都会携带这份cookie,通常用于告知服务器两个请求是否来自同一浏览器,也可以保持用户的登录状态、记录用户偏好。
- HTTP协议是无连接、无状态。
这意味着,每一次HTTP的请求,服务器无法辨识当前的客户端是普通用户还是VIP用户,而cookie技术就是协助服务器基于HTTP去标识请求的状态,或者辨识用户的身份。
- 浏览器保存cookie一般是保存在磁盘文件中,也可能保存在内存中。
- cookie机制的漏洞
1.浏览器直接保存用户的密码,黑客若盗窃用户浏览器数据,很容易泄露用户私密数据。
2.若非用户主机使用cookie访问服务器,能直接访问成功。
- session的出现
session是cookie的一条数据,过去服务器向浏览器写入的是username、passwd,而session的机制下,服务器做处理后,向浏览器写入的是sessionid。
- 现代浏览器都是cookie+session的做法
session的出现着重解决了用户私密数据泄露的问题,而身份冒充的问题,也能有效规避,比如可以在服务器端直接删除无效的sessionid,后续这种sessionid都无法成功访问。
- 那么,怎么识别这个sessionid是非法的?
和业务相关,主要是判断请求的地点、活跃程度。