接口测试 之 HTTP 1.1 认证之BASIC认证

介绍

BASIC 认证(基本认证)是从HTTP/1. 1 就定义的认证方式,是Web服务器与通信客户端之间进行的认证

认证步骤

步骤1:当请求的资源需要 BASIC 认证时,服务器会随状态码 401 Authorization Required,返回 WWW-Authenticate 首部字段(响应头)的响应。该字段内包含认证的方式(BASIC)及Request-URI 安全域字符串(realm)。

步骤2:接收到状态码 401 的客户端为了通过 BASIC 认证,需要将用户ID及密码发送给服务器。发送的字符串内容是由用户名 ID 和密码构成,两者中间以冒号(:)连接后,再经过 Base64 编码处理。

假设用户 ID 为 guest,密码是 guest,连接起来形成 “guest:guest” 这样的字符串。然后经过 Base64 编码成 Z3Vlc3Q6Z3Vlc3Q=。把这个字符串前面拼接 Baisc 形成 “Basic Z3Vlc3Q6Z3Vlc3Q=”,然后把这个字符串写入首部字段 Authorization 后,发送请求。

当用户端为浏览器时,一个仅需要输入用户 ID 和密码即可,浏览器会自动完成 Base64 编码的工作,并再前面添加 “Basic” 前缀。
  
步骤3:接收到包含首部字段 Authorization 请求的服务器,会对认证信息的正确性进行验证。如果验证通过,则返回一条包含 Request-URI 资源的响应。

步骤图解

在这里插入图片描述

BASIC 认证的的缺点

1)BASIC 认证虽然采用 Base64 密码方式,但这不是加密处理。不需要任何附加信息即可对其进行解码。换言之,由于明文解码后就是用户名 ID 和密码,再 HTTP 等非加密通信线路上进行 BASIC 认证的过程中,如果被人窃听,被盗的可能性极高。

所以,BASIC 认证需要配合HTTPS来保证信息传输的安全。

2)即使密码被强加密,第三方仍可通过加密后的用户名和密码进行重放攻击

3)如果想再进行一次 BASIC 认证时,一般的浏览器却无法实现认证注销操作。所以,BASIC 认证使用上不够灵活,且达不到多数 Web 网站期望的安全性等级,因此并不常用。

测试:认证失败

在这里插入图片描述

测试:认证成功

在这里插入图片描述

认证成功后,访问其他资源,浏览器自动添加 Authorization 请求头

在这里插入图片描述

使用postman 如何测试basic认证接口

在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值