认证的原因
一个组织内部可能会将web资源划分为不同的部分,不同的用户所访问的区域也不同,比方说A区域的资源只能a用户访问,其他用户不能访问,要实现这个需求,最简单的方法就是当用户访问A区域的资源时,服务器需要知道这个用户是不是a。
认证流程
HTTP提供了一个原生的质询/响应认证框架,简化了用户的认证过程,HTTP通过一组可控制的首部,为不同的认证协议提供了一个可扩展的框架,HTTP官方定义了两个认证协议:基本认证和摘要认证。先来简单看下认证流程:
client《----------------------------------------------》server
1.get
----------------------------------------------->
2. 401 Authorization Required
www-Authenticate:basic reaml=family
<------------------------------------------------
3.Authorization:basic jhuhufhdhdhf
------------------------------------------------>
4.ok
<-------------------------------------------------
代理认证
web服务器-----------------------------------------代理服务器
unauthorized status code 401 <------>unauthorized status code 407
www-authenticate <------------------>proxy-authenticate
authorization<----------------------->proxy-authorization