接口测试相关知识(四) HTTP会话流程以及认证体系

1、HTTP是无状态的协议

http是一个无状态的协议,但是互联网产品的发展,需要记住用户的操作行为习惯  

1.1HTTP的缺陷,以及HTTPS的特性

HTTP的协议它是存在缺陷的,这些缺陷主要为:

1、通信内容是明文,内容很可能被第三方获取到

2、不验证通信方的身份信息,容易被伪装

3、无法证明请求头的完整性

基于HTTP存在这些缺陷,也就有了HTTPS的协议,我们可以把HTTPS可以汇总为:
HTTPS=HTTP+加密+认证+完整性保护。

 

基于这样一层的设计,相对来书还是比较安全的,HTTPS不是全新的协议,它知识在HTTP的协议基础上新增SLL和TLS。在前面我们知道HTTP是和TCP直接通信。那么在HTTPS中,HTTP先和SSL通信,SSL再和TCP来进行通信。

1.2cookie

cookie:主要是存储用户操作行为的数据,在早期的互联网产品中,用户登录系统的凭证都是由cookie来进行记录的,但是由于是存储在客户端的(本机的电脑),所以是不安全的,基本目前登录认证的凭证不会再使用cookie的技术了

1.3session

由于cookie是存储在客户端的,它不安全,所以session是把登录成功后的数据存储在服务端

1.3.1session流程

 

 

 

由图片可知 session流程为

1、客户端输入账户和密码,点击登录

2、登录成功后,会在服务器把用户登录成功后的信息生成一个sessionid的凭证,并且储存在服务端

3、然后服务端通过响应头中的set-cookie把生成的sessionid返回给客户端

4、客户端查看个人主页时,客户端会通过请求头中的cookie,把set-cookie返回的sessionid带上,发送给服务器

5、服务端接受到客户端发送的sessionid,和存储在服务端的sessionid做一个对比

6、如果对比一致,用户可以继续访问系统的任何功能,如果不一致,则立刻跳转到登录的页面

 

1.4token

本质上是session的原理,我们可以把它理解为一个令牌,每次登录成功后,返回的token都是随机的字符串 jwt的技术来实现

1.4.1token流程

 

 


1、客户端输入账户和密码,点击登录
2、登录成功后,会在服务端把用户登录成功后的信息生成一个Token的凭证,同时了存储在服务端
3、服务端会通过响应数据或者是响应头中的set-cookie返回给客户端
4、那么客户端再次向服务端发送请求,会在请求参数或者请求头中的Authuration中带上返回来的token发送给服务端
5、服务端接收到客户端发送的Token,和存储在服务端的Token作一个对比
6、如果对比一致,用户可以继续访问系统的任何功能,如果对不一致,立刻跳转到登录的页面

2、HTTP的认证系统

HTTP认证体系 HTTP/1.1版本中,使用的认证方式具体为: 

BASIC认证,也就是基本认证DIGEST认证,也就是摘要认证SSL客户端认证 FormBase认证,也就是基于表单认证

 

2.1BASIC

基本认证采用Base-64编码方式,但是不是加密的处理方式。不需要附加任何信息可对其进行解码,那么在HTTP等 非加密通信的线路上进行BSCIC认证的过程中,很容易被人进行获取信息,安全体系不够高。

 

 

 

 

 

 

2.2DIGEST

DIGEST的认证体系是为了解决BASIC的缺陷之一的,它也是采用质询/响应的模式,但是不会直接发送明文密码。 所谓质询/响应模式指的是一开始一方先发送认证要求给另外一方,接着使用从另一方那接收到的质询码计算生成 响应码,最后将响应码返回给对方进行认证的方式。

 

posted on   钢镚芽儿哟  阅读(252)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示