HTTP Authorization解读

POST /goform/ser2netconfigAT HTTP/1.1Host: 192.168.16.254Connection: keep-aliveAuthorization: Basic YWRtaW46YWRtaW4= //笔者注释,Authorization: "Basic 用户名和密码的base64加密字符串"Content-Length: 23

uart=9600,8,n,1&save=1

用中文简述一下http auth的过程:客户端发送http请求服务器发现配置了http auth,于是检查request里面有没有"Authorization"的http header如果有,则判断Authorization里面的内容是否在用户列表里面,Authorization header的典型数据为"Authorization: Basic jdhaHY0=",其中Basic表示基础认证, jdhaHY0=是base64编码的"user:passwd"字符串。如果没有,或者用户密码不对,则返回http code 401页面给客户端。标准的http浏览器在收到401页面之后,应该弹出一个对话框让用户输入帐号密码;并在用户点确认的时候再次发出请求,这次请求里面将带上Authorization header一次典型的访问场景是:浏览器发送http请求(没有Authorization header)服务器端返回401页面浏览器弹出认证对话框用户输入帐号密码,并点确认浏览器再次发出http请求(带着Authorization header)服务器端认证通过,并返回页面浏览器显示页面使用http auth的场景不会用cookie,也就是说每次都会送帐号密码信息过去。然后我们都知道base64编码基本上等于明文。这削弱了安全。由于种种缺点,http auth现在用的并不多。不过在路由器等场合还是有应用的,原因是http auth最简单,使用起来几乎是零成本。在你需要做访问控制,又不想拖上SSO、数据库之类的东西的时候,http auth不失为一个简洁的选项。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、概念(载录于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434阅读 8,440评论 6 152
  • 工作流程 一次HTTP操作称为一个事务,其工作过程可分为四步: 1)首先客户机与服务器需要建立连接。只要单击某个超...
    保川阅读 4,637评论 2 14
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,951评论 19 139
  • Http协议详解 标签(空格分隔): Linux 声明:本片文章非原创,内容来源于博客园作者MIN飞翔的HTTP协...
    Sivin阅读 5,252评论 3 82
  • 我的梦做过千万回,却没有一次记住的。恰好这场梦好像是特意警告我的。真是令人奇怪的梦。人在一般情况下会做两个梦,我却...
    简书叶家健阅读 208评论 5 8