http之basic authentication浅析

1、客户端发请求:GET /registry/a.jpg HTTP/1.1

2、服务器:这个资源在安全区harbor-registry-basic-realm里,是受限资源,需要基本认证。于是返回了401,并且携带了Header:

Www-Authenticate: Basic realm="harbor-registry-basic-realm"

Www-Authenticate这个Header里面 有两个值,Basic:说明需要基本认证,realm:说明客户端需要输入这个harbor-registry-basic-realm安全区的用户名和密码,而不是其他区的。因为服务器可以为不同的安全区设置不同的用户名和密码。如果服务器只有一个安全区,那么所有的基本认证用户名和密码都是一样的。

3、客户端:如果客户端是浏览器,那么此时就会弹出一个弹窗,让用户输入用户名和密码。如果不是浏览器,则需要携带Header参数Authorization,Basic 内容为: 用户名:密码base64形式 。例如用户名为admin,密码为123456 那么Basic的内容为 admin:123456,对应的base64 编码内容为 YWRtaW46MTIzNDU2,Header为:

Authorization: Basic YWRtaW46MTIzNDU2

4.、服务器:成功响应

HTTP/1.1 200 OK

你可能感兴趣的:(网络,http,网络协议,网络)