当前位置: 首页 > news >正文

宁波网站建设优化企业推荐今日新闻摘抄50字

宁波网站建设优化企业推荐,今日新闻摘抄50字,网站文章做排名,wordpress导航设置✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Leo的博客 💞当前专栏:每天一个知识点 ✨特色专栏&#xff1a…

在这里插入图片描述

✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉
🍎个人主页:Leo的博客
💞当前专栏:每天一个知识点
✨特色专栏: MySQL学习
🥭本文内容:JWT和Token之间的区别
🖥️个人小站 :个人博客,欢迎大家访问
📚个人知识库: 知识库,欢迎大家访问

目录

    • 1.Token
      • 1.1 特点和使用
      • 1.2 Token基本原理
      • 1.3 优点
      • 1.4 缺点
    • 2.JWT
      • 2.1 JWT优势
        • 1.无状态
        • 2.有效的避免的CSRF攻击
      • 2.2 JWT基本原理
      • 2.4 差异性

在这篇文章中,我们主要介绍了JWT的相关概念。

  1. 什么是JWT
  2. JWT由哪些部分组成
  3. JSON Web Tokens是如何工作的
  4. 如何基于 JWT 进行身份验证
  5. 如何防止 JWT 被篡改的

今天我们主要介绍一下JWT跟Token之间的区别和联系。

1.Token

Token是一个宽泛的术语,它可以指代任何一种用于身份验证的机制。Token 常常被用在验证和授权流程中。Token 可以有不同的形式和结构,如随机生成的字符串或者特定格式的编码数据。

1.1 特点和使用

  1. 不固定格式:Token 可以是任何格式的数据字符串,不仅限于JWT。
  2. 存储信息:Token 可能仅作为引用存储在服务器上,服务器通过该引用来获取存储的状态信息。
  3. 会话管理:经统一的身份验证后,Token用来管理用户会话。
  4. 传输方式灵活:可以通过HTTP headers、URL参数或请求体传输。

1.2 Token基本原理

Token (就是加密的字符串,使用MD5,等不可逆加密算法,一定要保证唯一性)

客户端使用用户名跟密码请求登录

服务端收到请求,去验证用户名与密码

验证成功,服务端会签发一个Token保存到(Session,redis,mysql…)中,然后再把这个 Token 发送给客户端

客户端收到 Token 以后可以把它存储起来,比如放在 Cookie 里或者 Local Storage 里

客户端每次向服务端请求资源的时候需要带着服务端签发的 Token

服务端收到请求,验证密客户端请求里面带着的 Token和服务器中保存的Token进行对比效验, 如果验证成功,就向客户端返回请求

1.3 优点

  1. 可以隐藏真实数据,安全系数高
  2. 适用于分布式/微服务
  3. Token支持手动控制,过期、吊销等
  4. 可以实时查询现有Token

1.4 缺点

  1. 存放在数据库或者redis,依赖服务器资源
  2. 效率相对JWT比较低

2.JWT

2.1 JWT优势

1.无状态

JWT 自身包含了身份验证所需要的所有信息,因此,我们的服务器不需要存储 Session 信息。这显然增加了系统的可用性和伸缩性,大大减轻了服务端的压力。

不过,也正是由于 JWT 的无状态,也导致了它最大的缺点:不可控!

就比如说,我们想要在 JWT 有效期内废弃一个 JWT 或者更改它的权限的话,并不会立即生效,通常需要等到有效期过后才可以。再比如说,当用户 Logout 的话,JWT 也还有效。除非,我们在后端增加额外的处理逻辑比如将失效的 JWT 存储起来,后端先验证 JWT 是否有效再进行处理。

2.有效的避免的CSRF攻击

CSRF(Cross Site Request Forgery) 一般被翻译为 跨站请求伪造,属于网络攻击领域范围。相比于 SQL 脚本注入、XSS 等安全攻击方式,CSRF 的知名度并没有它们高。但是,它的确是我们开发系统时必须要考虑的安全隐患。就连业内技术标杆 Google 的产品 Gmail 也曾在 2007 年的时候爆出过 CSRF 漏洞,这给 Gmail 的用户造成了很大的损失。

关于CSRF具体可以参考我这篇文章

2.2 JWT基本原理

JWT是JSON Web Token缩写。它将用户信息加密到token里,服务器不保存任何用户信息。服务器通过使用保存的密钥验证JWTToken的正确性,只要正确即通过验证。

JWT包含三个部分: Header头部,Payload负载和Signature签名。由三部分生成JwtToken,三部分之间用“.”号做分割。 校验也是JWT内部自己实现的 ,并且可以将你存储时候的信息从JwtToken中取出来无须查库

客户端使用用户名跟密码请求登录

服务端收到请求,去验证用户名与密码

验证成功,服务端会签发一个JwtToken,无须存储到服务器,直接再把这个JwtToken发送给客户端

客户端收到JwtToken以后可以把它存储起来,比如放在 Cookie里或者LocalStorage 里

客户端每次向服务端请求资源的时候需要带着服务端签发的JwtToken

服务端收到请求,验证密客户端请求里面带着的 JwtToken, 如果验证成功,就向客户端返回请求的数据

2.4 差异性

  1. 标准与自定义:JWT 是一个开放标准(RFC 7519),明确定义了 Token 的结构和生成方式,而 Token 通常是自定义的,没有统一的结构标准。
  2. 状态存储:JWT 是无状态的,被设计为自包含,携带所有用户信息,因此服务端无需保存状态。而传统 Token 可能需要服务端存储额外的会话信息。
  3. 安全性:JWT 通过签名提供了额外的安全性。传统 Token 若无额外的安全措施,则可能容易受到中间人攻击等安全威胁。
  4. 体积:JWT 通常比简单 Token 体积更大,因为它包含了更多的用户信息和必需的加密数据。
http://www.zhongyajixie.com/news/39175.html

相关文章:

  • 海口网站建设加王道下拉b2b免费发布信息网站
  • 微信系统平台开发优化营商环境心得体会
  • 网站建设维护职责北京seo招聘信息
  • 自己做网站图片存在哪里网络优化seo是什么工作
  • 自己做视频的网站吗爱链接购买链接
  • 河北提供网站建设公司哪家好跨境电商靠谱吗
  • 聊网站推广搜外滴滴友链
  • 公司网站建设及维护管理总结广州网络科技有限公司
  • 那些论坛网站做的比较好百度助手应用商店下载安装
  • 局门户网站的建设英文seo兼职
  • wordpress站点标题隐藏互联网推广平台有哪些公司
  • 做宠物的网站关键词优化价格
  • 福州网站建设百度地图官网2022最新版下载
  • 网站面包屑导航怎么做的推广手段有哪些
  • 做网站备案实名需要钱吗网络营销公司做什么
  • 网站广告动态图怎么做市场营销一般在哪上班
  • 烟台电子商务网站软文发布平台排名
  • 教育网站搭建榆林seo
  • 大悟网站开发怎样做网站推广
  • iis网站配置 无法浏览推56论坛
  • 南充网站建设有哪些百度链接
  • 什么样的网站可以做站内站微信客户管理系统
  • 医药企业网站建设天津百度seo排名优化
  • 网站后台做数据库备份代码seo优化的作用
  • 企业管理培训课程费用百度搜索优化怎么做
  • 安微省建设庁官方网站网络优化工程师证书
  • 平顶山有做网站的公司seo关键词排名
  • 网站备案管局审核友情链接检索
  • 2015做那个网站能致富百度竞价排名广告定价鲜花
  • 想自己做网站需要会什么如何查看网站权重