Basic认证和Bearer Token认证的区别
前端发送POST请求服务器端数据时,通过使用两种认证方式:【1】Basic 用户名密码认证 【2】Bearer token 认证
这两种都是在请求头中存放:Authorization 认证信息 来请求服务端,服务端通过校验认证信息的正确性来判断用户的身份是否合法,那这两种有啥区别呢??
Basic token和Bearer token是两种不同的身份验证方式,其本质区别在于:
1)Basic token
Basic token是一种基本的身份验证方式,它使用base64编码的用户名和密码,将其加密成一个字符串,在nttp requestl怕的neader中以"Authorization:Basic[编码后的字符串]"的形式发送到服务器进行身份验证。这种身份验证方式的缺点在于,由于用户名和密码是以bse64编码的形式传递,因此容易被栏截并进行破解,存在风险。
2)Bearer token
Bearer token,是一种更为安全的身份验证方式,它通过在用户登陆成功后,由服务器返回一个随机的token,这个token是具有时效性和唯一性的,客户端在每次请求时,将token放在http request的header中以"Authorization:Bearer[token]"的形式发送到服务器进行 身份验证。服务器端通过token来验证客户端的身份是否合法。Bearer token的安全性更高,每个用户拥有独立的token,token的时效性保证了一段时间后即使被截获,也不能被长时间滥用,提高了安全性。
因此,二者之间的本质区别在于安全性的差异。