快速了解Cookie/Session/Token,以及CSRF跨站攻击
本文主要介绍Cookie、Session以及Token的工作机制,以及CSRF跨站攻击,并不涉及到具体以及细节的属性。希望能帮助大家快速了解这几种不同的浏览器用户身份跟踪的会话方式。
无状态的HTTP
Http协议本身是无状态的,也就是说每一次请求都是相互独立的,服务器并不能分辨请求是不是来自同一个用户。这样的好处是处理起来迅速,缺点就是在很多场景中,用户的每一步操作都是上下文关联的,比如网购往购物车里加东西,即使没有登录帐号,服务器也需要记住用户之前加购了啥,否则一刷新之前的加购记录全都丢了。所以我们需要额外的手段来帮助Http请求保持状态,记录用户信息。
Cookie
Cookie介绍
Cookie的实现机制简单来说就是一段存储在客户端的文本信息。当需要使用到Cookie时,客户端向服务器请求后会从服务器的response中收到相关的Cookie信息,并且可以将它保存在本地并设置一个过期时间,在未过期之前,发送请求时都会带上这段Cookie信息,服务器则会根据Cookie分辨请求来自哪个用户。类似于购物车加购,免密登录都可以通过Cookie来实现。
Cookie的不足
但在实际的工程中,基本不会单独使用Cookie,因为它是明文存储的,安全性非常低,一旦被劫持后,所有信息都将暴露。接下来