一、session认证

1、session认证的过程:
前端输入用户名和密码进行登录操作,后端拿到用户名和密码后,会把md5进行加密,加密之后,拿上加密后的密文到用户表中查找密文是否一致,判断用户是否存在,如果用户存在,则认证通过;认证成功后后端会生成session_id(后端会话当中的一个键,表中的一个key值),将session_id默认保存在会话表,当这条数据一旦记录完之后,会将session_key数据作为session_id放到响应头的set-cookie字段中;
浏览器接下来的操作为:将响应头中的set-cookie字段的值取出来把它放到cookie中,下一次请求接口的时候,浏览器会自动将cookie中的sessionid字段传给后端,而后端将sessionid取出来,去会话表中查找,如果一致登录成功,否则登录失败;如果sessionid时间超时,也会登录失败。

如果没有这种cookies机制,我们不管干嘛都得登录;有cookies机制,只要我们有合法的sessionid,并且sessionid没有过期就可以正常访问。

会话id(session_id)是后端django生成的
2、session认证示意图:

3、session认证机制的特点:
session保存在服务端,大量的用户进行登录操作,数据会存放大量的数据;会增加服务器开销
分布式架构中,难以维持session会话同步
csrf攻击风险

二、token认证

1、token认证的过程:
a、客户端使用用户名和密码请求登录
b、服务器收到请求,去验证用户名和密码
c、验证成功后,服务器会生成一个token,再把token发送给客户端
d、客户端收到token以后把它存储起来,放到会话存储或者本地存储中(浏览器关掉后,存放在会话存储中的内容被清空,本地存储会永久存放,除非手动删除本地存储内容),
e、客户端每次向服务端请求资源的时候需要带着服务端返回来的token
f、服务端收到请求后,去验证客户端请求里面带着的token,如果验证通过,就向客户端返回响应数据
2、token认证示意图:

3、token认证机制的特点:
token保存在客户端,不保存在数据库;不会增加服务器开销,性能更好
跨语言、跨平台
拓展性强
鉴权性能高
cookie是专门保存身份信息的

常用的认证机制之session认证和token认证相关推荐

  1. 代码角度理解SGX的认证机制(一):本地认证

    一.基本概念 1.认证(attestation): 是指一个enlave中的程序向其他enclave证明其完整性和真实性的过程.intel SGX认证即是一个在SGX平台上运行的ISV enclave ...

  2. 代码角度理解SGX的认证机制(三):远程认证

    SGX 远程证明 和EPID证明协议不同,SGX不允许信任各方充当EPID验证的角色.而是由intel提供一个全球在线验证机构叫做intel 认证服务 (IAS). EPID认证协议涉及两个intel ...

  3. 身份认证——session认证机制与JWT认证机制(入门到使用)

    首先我们要了解什么是身份认证(Authentication)? 身份认证也叫身份验证或者鉴权,指通过一定的手段来完成对用户身份的验证 我们会使用session和JWT认证机制进行开发,那么我们在什么情 ...

  4. ASP.NET WebApi 基于分布式Session方式实现Token签名认证

    一.课程介绍 明人不说暗话,跟着阿笨一起学玩WebApi!开发提供数据的WebApi服务,最重要的是数据的安全性.那么对于我们来说,如何确保数据的安全将会是需要思考的问题.在ASP.NETWebSer ...

  5. 使用 做签名的post_ASP.NET WebApi 基于分布式Session方式实现Token签名认证

    一.课程介绍 明人不说暗话,跟着阿笨一起玩WebApi!开发提供数据的WebApi服务,最重要的是数据的安全性.那么对于我们来说,如何确保数据的安全将会是需要思考的问题.在ASP.NETWebServ ...

  6. Kafka的安全认证机制SASL/PLAINTEXT 2020.11.12

    Kafka的安全认证机制SASL/PLAINTEXT SpringCloud Stream + Kafka安全认证机制(SASL/PLAINTEXT) Kafka的安全认证机制SASL/PLAINTE ...

  7. Webapi添加token认证功能

    1.创建控制台应用程序 在 "文件" 菜单上,选择"项目". 从安装的 "视觉C#对象" 下,选择 " Windows 桌面&qu ...

  8. 基于Token的WEB后台登录认证机制(并讲解其他认证机制以及cookie和session机制)

    几种常用的认证机制 HTTP Basic Auth HTTP Basic Auth简单点说明就是每次请求API时都提供用户的username和password,简言之,Basic Auth是配合RES ...

  9. 身份认证 Session认证机制 Cookie原理

    身份认证 什么是身份认证 身份认证又称"身份验证"."鉴权",是指通过一定的手段,完成对用户身份的确认. 日常生活中的身份认证随处可见,例如:高铁的验票乘车,手 ...

最新文章

  1. jquery文件上传控件 Uploadify
  2. 开源通用爬虫框架YayCrawler-运行与调试
  3. 为什么强烈禁止开发人员使用isSuccess作为变量名
  4. C++ 深拷贝和浅拷贝std::move移动构造函数,移动赋值函数
  5. 【算法】插值查找算法
  6. Python基础——zip
  7. mysql主键外键_MySQL数据库的主键和外键详解3
  8. 85. php 绘图体系
  9. 植物大战僵尸的简单修改
  10. 手机上能不跳转就不跳转
  11. 第二类曲线、曲面积分计算公式
  12. java中输出第一个a的的位置,java小编程--在一个A字符串中找到与B字符串一样的,返回B字符串出现的第一个位置...
  13. ORA-01653: unable to extend table原因及解决
  14. 谷歌卫星地图下载器bigemap的优势
  15. 放榜!腾讯iOA、腾讯天幕入选国内数字化可信服务首批认证产品
  16. 2017安徽阜阳、亳州移动计算机类面试+合肥二面
  17. OTFS从零开始(一)
  18. androidQ集成apk
  19. java 二进制运算_java二进制运算基础知识点详解|chu
  20. JavaScript 原型链和继承面试题

热门文章

  1. 赛迪155页PPT中国“新基建”发展研究报告!
  2. 解决数据中心管综难题:管线避让的十七个原则!
  3. 亚马逊AWS 数据中心起火,致 5 人死亡、50 人受伤
  4. flutter可视化_Flutter 对Dart情有独钟的那些事儿
  5. Python之pandas:pandas的get_dummies函数简介(将分类变量转为哑变量)及其使用方法之详细攻略
  6. DL之AlexNet:AlexNet算法的架构详解、损失函数、网络训练和学习之详细攻略
  7. HighNewTech:带你解读云计算、雾计算(Fog Computing)、边缘计算(Edge Computing)的前世今生
  8. MAT之GA:遗传算法(GA)解决M-TSP多旅行商问题
  9. js中的arguments 参数
  10. sqli-labs(十二)(union以及select的过滤)