HTTP Basic Authentication认证

本文介绍了HTTP基本认证的概念,特别是在桌面应用与Web服务器交互中的应用。它不依赖cookie,而是通过在请求头Authorization中放入Base64加密的用户名和密码字符串。文章还简要概述了HTTP认证过程,并提供了Java实现的相关内容。
摘要由CSDN通过智能技术生成

HTTP基本认证

  桌面应用程序也通过HTTP协议跟Web服务器交互, 桌面应用程序一般不会使用cookie, 而是把 "用户名+冒号+密码"用BASE64算法加密后的字符串放在http request 中的header Authorization中发送给服务端, 这种方式叫HTTP基本认证(Basic Authentication)

  我用中文简述一下http auth的过程:

    · 客户端发送http请求
​
    · 服务器发现配置了http auth,于是检查request里面有没有"Authorization"的http header
​
    · 如果有,则判断Authorization里面的内容是否在用户列表里面,Authorization header的典型数据为"Authorization: Basic cm9vdDpyb290",其中Basic表示基础认证, cm9vdDpyb290是base64编码的"root:root"字符串。
​
     · 如果没有,或者用户密码不对,则返回http code 401页面给客户端
​
     · 标准的http浏览器在收到401页面之后,应该弹出一个对话框让用户输入帐号密码;并在用户点确认的时候再次发出请求,这次请求里面将带上Authorization header

 

 一次典型的访问场景是:
       · 浏览器发送http请求(没有Authorization header)
​
       · 服务器端返回401页面
​
       · 浏览器弹出认证对话框
​
       · 用户输入帐号密码,并点确认
​
       · 浏览器再次发出http请求(带着Authorization header)
​
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值