cookie 使用详解

什么是cookie?
cookie是网站暂时或者永久存储用户信息在用户本地的小型文字档案
cookie存在用户哪里?
以我的电脑为例:/Users/youname/Library/Application Support/Google/Chrome/Default/cookies, 它是一个Sqlite文件.
Cookie的内存尺寸和个数限制?
每个浏览器的限制还不一样,不管是个数还是尺寸
一般是内存是限制4k个数按域名是一个域名160多个 ,不同版本都有差异,所以建议不要使用cookie存储太多的内容
Cookie 文件的内容是什么,包含哪些属性,每个属性有什么含义?

什么是第三方cookie?
在a网站中,发起跨域b网站或者资源的请求,这个时候b网站的cookie会带到请求头里发起请求。这种cookie也叫做第三方cookies,CSRF攻击通常就是利用这种原理来进行攻击。用户访问b网站留下一些cookie,再引导用户进入攻击者伪造的a网站,a网站内组装了一个b网站的请求。这个时候用户触发该请求,默认就能够成功发起。

SameSite 是CSRF的克星,SameSite 包含属性:None、Lax、Strict
Strict
严格模式
所有从当前域发送出来的非同域请求都不会带上cookie
Lax
宽松模式
A标签链接
预加载
Get Form表单 会发送

None
必须和secure一起设置

一下罗列了samesite Lax 的配置对应的第三方cookie的发送情况。
cookie 使用详解_第1张图片
safari 目前已经开始默认开启samesite 为lax模式,未来会有越来越多的浏览器跟进。

你可能感兴趣的:(前端,cookie)