《HTTP权威指南》每章的知识点总结
认证就是给出一种身份证明
HTTP的质询/响应认证框架:简单来说就是客户端和服务器端之间通信需要通过不断验证身份的过程来完成一个会话。web第一次发起一条http请求报文时,服务器返回一个“认证质询”响应,要求客户端提供用户信息,用户再次发起请求时,就会附上身份信息证书,如果验证通过,那么就完成会话,否则继续发起质询/认证!
认证协议与首部:http官方定义了两个官方的认证协议:基本认证和摘要认证。与此有关的报文首部如下:
WWW-Authenticate————发生在服务器向客户端发起质询时,此时服务端返回401状态码,同时此首部定义了服务器端那个域需要验证质询认证
Authorization————发生在客户端发起认证时,携带用户名和密码等信息!
Authentication-Info————发生在认证成功时,服务器返回200 ok,并以此首部携带一些信息
基本认证实现服务器端可以拒绝一个事务,并要求验证客户端信息,返回401状态码,发起质询/认证!
Base-64用户名/密码编码:是一种编码机制
代理认证:就是代替服务器向客户端发起质询/认证,与服务器端发起的质询/认证主要有几点不同:质询的时候返回的是407状态码,服务器端质询返回的首部是Proxy-Authenticate,客户端认证时发送的是Proxy-Authorizatio首部,认证成功之后返回的是Proxy-Authentication-Info首部。
1、基本认证是采用网络以明文的方式发送用户名和密码,容易被别人捕获。
2、即使是密文发送 ,也很容易被别人解码
3、适用于很简单的会话服务
4、没有中间节点的保护措施
5、容易假冒服务器骗过基本认证