HTTP:十一.HTTP认证概述
基本认证概述
在HTTP中,基本认证(英语:Basic access authentication)是允许http用户代理(如:网页浏览器)在请求时,提供 用户名 和 密码 的一种方式。
在进行基本认证的过程里,请求的HTTP头字段会包含Authorization字段,形式如下: Authorization: Basic <凭证>,该凭证是用户和密码的组和的base64编码。
最初,基本认证是定义在HTTP 1.0规范(RFC 1945)中,后续的有关安全的信息可以在HTTP 1.1规范(RFC 2616)和HTTP认证规范(RFC 2617)中找到。于1999年 RFC 2617 过期,于2015年的 RFC 7617 重新被定义。
认证步骤
- 客户端访问一个受http基本认证保护的资源。
- 服务器返回401状态,要求客户端提供用户名和密码进行认证。(验证失败的时候,响应头会加上WWW-Authenticate:
Basic realm=“请求域”。) 401 Unauthorized WWW-Authenticate:Basic realm=“WallyWorld” - 客户端将输入的用户名密码用Base64进行编码后,采用非加密的明文方式传送给服务器。 Authorization: Basic xxxxxxxxxx
- 服务器将Authorization头中的用户名密码解码并取出,进行验证,如果认证成功,返回200的响
应,则返回相应的资源,并以Authentication-Inf