Cookie、token、session的区别是什么?
背景:
最近在总结一些容易理解混淆的概念,之前面试的时候提到过,我觉得也说不清楚,这两天项目做接口测试发现用的cookie而不是之前的token,于是总结一下,便于以后用到的时候再阅读以及分享给需要的人。后期如果发现总结不对会持续更新
从安全性优先级来说:
1、优先级
Cookie<session<token
2、 安全性
Cookie:
①cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session
②HTTP是一种无状态协议,服务器没有办法单单从网络连接上面知道访问者的身份,为了解决这个问题,就诞生了Cookie
Cookie实际上是一小段的文本信息。客户端请求服务器,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie
客户端浏览器会把Cookie保存起来。当浏览器再请求该网站时,浏览器把请求的网址连同该Cookie一同提交给服务器。服务器检查该Cookie,以此来辨认用户状态。服务器还可以根据需要修改Cookie的内容。
session:
① session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用cookie
② 关闭浏览器不会关闭session,它具失效日期,失效后服务器认为客户端停止了活动,并删除session以节省空间
Token:
① 作为身份认证 token安全性比session好,因为每个请求都有签名还能防止监听以及重放攻击
② Oauth token提供的是认证和授权,认证针对用户,授权针对app
③ token的生成一般是采用uuid保证唯一性,当用户登录时为其生成唯一的token,存储一般保存在数据库中。token过期时间采用把token二次保存在cookie或session里面,根据cookie和session的过期时间去维护token的过期时间
开发过程举例:
案例一:
项目中我们的用户数据可能需要和第三方共享,或允许第三方调用我们的API则用token
案例二:
公司内部的网站,自己的App,就可以用cookie、session
一般来说我们可以将登录信息放在session,其他信息保存在cookie
案例三:
观察微信、支付宝登录接口用的就是token
转载于:https://www.cnblogs.com/yoyoblogs/p/11557918.html
Cookie、token、session的区别是什么?相关推荐
- postman cookie设置_接口鉴权之cookie,session和token
什么是接口鉴权? 鉴权就是鉴定权限.在公司开发的一些系统中都会有权限的鉴定.不管是app还是网站的项目,都会有登录模块,而只要有登录模块,他有一些功能,肯定是必须要登录之后才能完成了.比如你在淘宝下单 ...
- 理解cookie和session
cookie:一种发送到客户浏览器的文本串句柄,并保存在客户机硬盘上,可以用来在某个WEB站点会话间持久的保持数据. session:就是服务器内存的一个key-value的数据结构,一个用户独有一个 ...
- Python爬虫番外篇之Cookie和Session
关于cookie和session估计很多程序员面试的时候都会被问到,这两个概念在写web以及爬虫中都会涉及,并且两者可能很多人直接回答也不好说的特别清楚,所以整理这样一篇文章,也帮助自己加深理解 什么 ...
- 什么是cookie?什么是session?cookie与session有什么区别
cookie与session的由来: 网址的发展史:1.起初网站都没有保存用户功能的需求,所有用户访问返回的结果都是一样的.比如:新闻网页,博客网页,小说... (这些网页是不需要登录后才能访问的,每 ...
- Cookie和session的区别以及安全性_小晓_同学__新浪博客
1.cookie 是一种发送到客户浏览器的文本串句柄,并保存在客户机硬盘上,可以用来在某个WEB站点会话间持久的保持数据. 2.session其实指的就是访问者从到达某个特定主页到离开为止的那段时间. ...
- Cookie、Session、Token那点事儿
前言:新公司项目中使用到了Cookie,在各大Android技术讨论群向前辈们取经讨论这cookie.session.token这仨哥们的时候,很多开发者说法不一各抒已见,所以是时候回顾下http基础 ...
- 【转】彻底理解cookie,session,token
转自:https://zhuanlan.zhihu.com/p/63061864 彻底理解cookie,session,token 发展史 1.很久很久以前,Web 基本上就是文档的浏览而已, 既然是 ...
- 彻底搞懂Cookie、Session、JWT和Token
文章目录 引入:http是一个无状态协议?怎么解决呢? 一.Cookie和Session 1.1 cookie 注意事项: 1.2 cookie 重要的属性 1.3 session 注意事项: 1.4 ...
- 一问带你区分清楚Authentication,Authorization以及Cookie、Session、Token
很多人可能对权限认证领域一些常见的概念都不是特别了解,所以写了篇文章专门介绍一下这些概念. 1. 认证 (Authentication) 和授权 (Authorization)的区别是什么? 这是一个 ...
最新文章
- 写给开发者的 10 条机器学习建议
- [原创]Pubwin2007服务器安全测试工具(防范Pubwin收银伴侣之类的软件)
- Linux开机启动服务管理
- 让Tee 7.x版本和FastReport 3.x版本共存
- Oracle 常用命令举例
- 本地项目上传到gitlab上
- java查找字符串是否有单词_java – 用于搜索单词/字符串是否包含在实...
- (转)Spring Boot 2 (十):Spring Boot 中的响应式编程和 WebFlux 入门
- Linux下find命令用法详解
- html与css怎么混合运用,Web设计中的CSS混合模式
- ACM复习(53)17229 Lry,你除了2还是2
- 【vishwaCTF】web题解wp
- python计算机入门基础知识_python全栈学习记录--2(2018.1.13) 计算机基础知识
- Cadence Allegro学习之铜皮(走粗线)的使用方法+罐铜+铜皮切割
- JAVA实现类泡泡屏保效果
- Vue实现购物车功能
- 1553B总线基础知识及扩展
- qq邮箱imtp收件服务器,qq邮箱代收outlook
- linux限制指定ip禁止访问指定端口,linux设置iptables禁止某个IP访问
- 数据结构-树与深度优先遍历
热门文章
- 第五天 常用基本函数
- 数据库 数据库编程二
- Linux cp一个文件夹时提示cp: omitting directory `test/'
- (SenchaTouch+PhoneGap)开发笔记(2)开发环境搭建二
- Windows下配置Mysql免安装版
- 转 sqlserver 中NOLOCK、HOLDLOCK、UPDLOCK、TABLOCK、TABLOCKX
- Transformer在计算机视觉领域走到哪了?
- 阿里联合学界开源大型3D场景数据集,6813个户型,几何与纹理细节丰富
- 「附身」马云、恶搞特朗普,AI新应用助你上演「大咖模仿秀」
- 祝贺!港中文助理教授周博磊宣布加入UCLA