2020年11月20日星期五

drf—— 响聊聊cookie session token的演变

  

一、会话保持

 

二、

cookie:客户端浏览器上的键值对,缺陷是:数据不安全之后有了session:服务端的键值对(内存,数据库,redis,文件),客户端只放一个随机字符串,安全(即便是泄露,也只是单个人的随机字符串被泄露,别人的猜不出来),缺陷是:对服务端压力大之后有了token:分三段:头.荷载.签名  -header(公司信息,加密方式。。。)  -payload(荷载,真正有用的数据部分,放用户id,用户名字。。(是拼在token串中的,所以就放在客户端了,客户端发请求会携带过去,这样子像cookie当然不安全,
          所以有了signature)) -signature(签名,为了安全,把头和荷载部分通过不可逆加密算法加密---》得到一个签名)
  

  比如token:
    head.{name:lili,age:18}.eseetsweasdca
    base64加码后变成:
    asdfasfd.asdfasdf.asdfasdfaeraew

因为token框架都要用,所以网上开源出drf-jwt模块

-更详细看演变:https://www.cnblogs.com/liuqingzheng/articles/9509779.html

三、drf-jwt模块

1.快速使用

-快速使用:(默认使用的是auth的user表)  -1 创建用户  -2 在路由中配置path('login/', obtain_jwt_token),  -3 在postman中测试,用户名密码输入刚刚创建的用户就可以生成token  -4 让一个视图必须登录以后才能访问   -authentication_classes = [JSONWebTokenAuthentication, ] #认证(此认证类即可的登录访问,又可不登录访问,所以要加权限)   -permission_classes = [IsAuthenticated,]#权限  -5 让一个视图可以登录后访问,也可以不登录访问   -authentication_classes = [JSONWebTokenAuthentication, ]  -6 用postman测试,在请求头中加入   -key:Authorization value:jwt+空格+token串

2.自己写基于jwt的认证类(登录了能访问,不登录就不能访问)

-自己写基于jwt的认证类(登录了能访问,不登录就不能访问) class JwtAuthentication(BaseJSONWebTokenAuthentication):  def authenticate(self, request):   #取出token token=request.GET.get('token')   token=request.META.get('HTTP_AUTHORIZATION')   try:     # 验证token是否正确    payload = jwt_decode_handler(token)   except jwt.ExpiredSignature:    raise AuthenticationFailed('过期了')   except jwt.DecodeError:    raise AuthenticationFailed('解码错误')   except jwt.InvalidTokenError:    raise AuthenticationFailed('不合法的token')    #也可以只写一个except Exception('token不合法')    user=self.authenticate_credentials(payload)   return (user, token)-自定制认证类的使用方式: -全局使用 -局部使用
-更详细JWT请看:https://www.cnblogs.com/guojieying/p/13966264.html

 









原文转载:http://www.shaoqun.com/a/492719.html

商标抢注:https://www.ikjzd.com/w/1053

anker:https://www.ikjzd.com/w/1027

拍怕网:https://www.ikjzd.com/w/2205


一、会话保持二、cookie:客户端浏览器上的键值对,缺陷是:数据不安全之后有了session:服务端的键值对(内存,数据库,redis,文件),客户端只放一个随机字符串,安全(即便是泄露,也只是单个人的随机字符串被泄露,别人的猜不出来),缺陷是:对服务端压力大之后有了token:分三段:头.荷载.签名-header(公司信息,加密方式。。。)-payload(荷载,真正有用的数据部分,放用户id
tracker:tracker
递四方:递四方
继要求美国注册律师代理之后,美标申请证据要求更加严格!/亚马逊将成为谷歌搜索广告业务有力竞争者:继要求美国注册律师代理之后,美标申请证据要求更加严格!/亚马逊将成为谷歌搜索广告业务有力竞争者
玄真峡谷水深不深?清远玄真峡谷有水吗?:玄真峡谷水深不深?清远玄真峡谷有水吗?
野心从未停止!亚马逊计划收购玩具反斗城门店!:野心从未停止!亚马逊计划收购玩具反斗城门店!

没有评论:

发表评论

跨境电商资讯:外贸宣传平台有哪些(出口的

现在很多做外贸的人都非常关注 外贸企业怎么推广 ,而现在推广的途径和平台有很多,企业如果都做,成本和时间精力是一个问题,而且并不是所有的推广渠道都是有用的。今天云程网络就来为大家盘点几个有效的外贸推广渠道。 一、海外社交媒体营销 Facebook,领英等海外社交媒体营销在近几年得...