Basic Auth认证, Session/Cookie认证,JWT Token认证使用场景和优缺点分析

Basic Auth认证, Session/Cookie认证,JWT Token认证使用场景和优缺点分析

一. 为什么要认证授权

  http协议是一种无状态协议,每用户请求时,浏览器、服务器无法知道之前这个用户做过什么,每一次请求都是一次新的请求(浏览器与服务器是使用socket套接字进行通信,服务器将请求结果返回给浏览器之后,会关闭当前的socket链接,而且服务器也会在处理页面完毕之后销毁页面对象)。
  为了使后台应用能识别是哪个用户发出的请求,我们必须做一些事情。

二. Basic Auth

  简单点说明就是每次请求API时都提供用户的username和password。
  缺点很明显,安全性低,每次都需要传递用户名和密码,用户名和密码很大程度上存在被监听盗取的可能;
  完全不建议使用!

三. 传统Session/Cookie认证

  实现状态保持主要两种方式:
  1. 在客户端存储信息使用Cookie:安全性不高,个人不建议使用。
  2. 在服务端存储信息使用Session:服务器开销大,扩展性低(分布式场景需要解决session共享问题:可以使用绑定ip访问或者Redis共享session信息)。中小型单体架构网站可以使用session认证。

  session认证流程:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值