授权 - JWT、OAuth、OAuth2、SpringSecurityOAuth2的区别

前言

首先,理解JWT、OAuth、OAuth2、SpringSecurityOAuth2都是什么,然后再理解它们之间的关系与区别。

简介

JWT

  • JSON WEB TOKEN(JWT)是一种认证协议。
  • JWT提供了一种用于发布接入令牌(Access Token),并对发布的签名接入令牌进行验证的方法。 令牌(Token)本身包含了一系列声明,应用程序可以根据这些声明限制用户对资源的访问。
  • JWT的详细介绍。

OAuth

  • OAuth Core 1.0(OAuth)协议使网站或应用程序(消费者)可以通过API从Web服务(服务提供商)访问受保护资源,而无需用户向消费者披露其服务提供商凭据。更一般而言,OAuth为API身份验证创建了可自由实施的通用方法。
  • OAuth于2009年6月24日 淘汰了此规范。
  • OAuth的详细介绍。

OAuth2

  • OAuth Core 2.0(OAuth2)是用于授权的行业标准协议。OAuth 2.0致力于简化客户端开发人员,同时为Web应用程序,桌面应用程序,移动电话和客厅设备提供特定的授权流程。该规范及其扩展正在IETF OAuth工作组内开发。
  • OAuth2的详细介绍。
  • 内部介绍跳转。

SpringSecurityOAuth2

  • Spring的认证、授权框架。
  • Spring Security 是一种基于 Spring AOP 和 Servlet 过滤器 Filter 的安全框架,它提供了全面的安全解决方案,提供在 Web 请求和方法调用级别的用户鉴权和权限控制。
  • Web 应用的安全性通常包括两方面:用户认证(Authentication)和用户授权(Authorization)。
  • 内部介绍跳转。

关系与区别

OAuth、OAuth2关系与区别

  • OAuth为OAuth2的上一个版本。

JWT、OAuth2关系与区别

  • OAuth2有client和scope的概念,jwt没有。如果只是拿来用于颁布token的话,二者没区别。常用的bearer算法oauth、jwt都可以用。应用场景不同而已 - Spring Cloud 的权限框架就是用的jwt实现的oauth2 。二者没有必然联系 ​
  • Token功能不一样,JWT的token是包含用户基本信息的,然后通过加密的方式生成的字符串,服务器端拿到这个token之后不需要再去查询用户基本信息,解析完token之后就能拿到。想想在微服务架构下,用户服务是一个单独的服务,但是其他服务大部分情况下也会需要用户信息,难道要每次用到都去取一次吗? JWT非常适合微服务。 ​
  • OAuth2用在使用第三方账号登录的情况(比如使用weibo, qq, github登录某个app)。OAuth2是一个相对复杂的协议, 有4种授权模式, 其中的access code模式在实现时可以使用jwt才生成code, 也可以不用. 它们之间没有必然的联系. ​
  • JWT是用在前后端分离, 需要简单的对后台API进行保护时使用.(前后端分离无session, 频繁传用户密码不安全)
  • JWT是一种认证协议 。JWT提供了一种用于发布接入令牌(Access Token),并对发布的签名接入令牌进行验证的方法。 令牌(Token)本身包含了一系列声明,应用程序可以根据这些声明限制用户对资源的访问。
  • OAuth2是一种授权框架。提供了一套详细的授权机制(指导)。用户或应用可以通过公开的或私有的设置,授权第三方应用访问特定资源。

OAuth2、SpringSecurityOAuth2关系与区别

  • SpringSecurityOAuth2是OAuth2的代码实现。
  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qumy97

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值