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

相关推荐
李少兄8 小时前
Unirest:优雅的Java HTTP客户端库
java·开发语言·http
可乐加.糖9 小时前
一篇关于Netty相关的梳理总结
java·后端·网络协议·netty·信息与通信
大丈夫立于天地间9 小时前
ISIS协议中的数据库同步
运维·网络·信息与通信
Dream Algorithm9 小时前
路由器的 WAN(广域网)口 和 LAN(局域网)口
网络·智能路由器
IT猿手9 小时前
基于CNN-LSTM的深度Q网络(Deep Q-Network,DQN)求解移动机器人路径规划,MATLAB代码
网络·cnn·lstm
吴盐煮_9 小时前
使用UDP建立连接,会存在什么问题?
网络·网络协议·udp
hyshhhh10 小时前
【算法岗面试题】深度学习中如何防止过拟合?
网络·人工智能·深度学习·神经网络·算法·计算机视觉
Hellc00710 小时前
轮询、WebSocket 和 SSE:实时通信技术全面指南(含C#实现)
网络
xujiangyan_11 小时前
nginx的反向代理和负载均衡
服务器·网络·nginx