BASIC认证

basic认证(基本认证)是从http/1.0就定义的认证方式。即使是如今仍有一部分的网站会使用这种认证方式。web

认证步骤浏览器


步骤1 :当请求的资源须要BASIC认证时,服务器会随状态码401Authorization Requireed,返回带WWW-Authenticate首部字段的响应。该字段内包含认证的方式(BASIC)及 Request-URI安全域字符串(realm)安全

步骤2 :接收到状态码401的客户端为了经过BASIC认证,须要将用户ID及密码发送给服务器。发送的字符串内容是由用户ID和密码构成,二者中间以(:)链接后,在通过Base64编码处理。服务器

假设用户ID为guest,密码是guest,链接起来就会造成guest:guest这样的字符串。而后通过base64编码,最后结果是 Z3VLc3Q6Z3Vlc3Q=。把这串字符串写入首部字段Authrization以后发送请求。网站

当用户代理为浏览器时,用户仅输入用户ID和密码便可,以后,浏览器会自动完成到base64编码的转换工做ui


步骤3: 接收到包含首部字段Authorization请求的服务器,会对认证信息的正确性进行验证。若是验证经过,则返回一条包含Request-URI的资源响应编码

basic认证虽然采用了Base64编码方式,但这不是加密处理。不须要任何附加信息便可对其解码。换言之,因为明文解码后就是用户id和密码,在http等非加密通讯的路线上进行BASIC认证的工程中,若是被窃听,被盗的可能性极高。加密

另外,除此以外想进行一次BASIC认证时,通常浏览器没法实现认证注销操做,这也是问题之一。代理

BASIC认证使用上不够便捷灵活,且达不到多数web网站网站指望的安全等级,所以它并不经常使用。cdn