OAuth2.0 授权码理解

OAuth2.0授权模式

本篇文章介绍OAuth的经典授权模式, 授权码模式

所谓授权无非就是授权与被授权,被授权方通过请求得到授权方的同意,并赋予某用权力,这个过程就是授权。

那作为授权码就更加简单,第三方直接发起授权请求并希望能够得到某种我需要的权力。授权方根据第三方的需求提供相应的授权权限,最后生成一串付有权限的码来实现授权,这个码就是所谓的授权码。

什么是OAuth?

OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版。

OAuth的作用就是让"客户端"安全可控地获取"用户"的授权,与"服务商提供商"进行互动。

具体场景

对于授权码模式现在使用的场景特别多,这里就用QQ登录第三方服务器做一个讲解。

 

我们在访问第三方网站或者应用程序的时候会有一个登录的操作,但是我们没有帐号而且不想注册怎么办?别担心现在有QQ第三方进行登录

在进行登录的时候,会输入QQ帐号或者密码,细心的朋友发现这根本就不是我登录那个网站的页面。

其实这个界面就是QQ登录界面,输入帐号和密码通过QQ登录,但是QQ是不会直接把用户的帐号和密码给第三方,登录成功是返回一个授权码,这就是我们所讲的授权,他的具体流程如下。

  1. 点击QQ登录小图标,客户端重定向地址指向QQ授权登录
  2. 重定向地址的时候会传递一个参数callback,这个参数就是授权成功需要重定向返回跳转的地址。
  3. 用户输入帐号密码登录QQ服务器
  4. QQ登录成功返回授权码给第三方服务器(第三方服务器保存授权码到数据库)
  5. 服务器返回重定向第三方界面(callback参数)
  6. 最后实现QQ授权登录

 

(当时我只记了这些)

废话有点多,还望大佬多多指教,以后更加努力。

点赞
收藏

评论区

加载中...

相关推荐

SinaWeibo Oauth2.0授权问题

本文讲的是如何通过Oauth2.0对第三方APP授权,Oauth2.0的授权流程,原理的这里就不介绍了,百度搜就有了。这里主要讲的是怎么在自己的APP中添加代码,获取accesstoken。第一步:下载SDK。登入open.weibo.com,在文档资源下载SDK,下载新浪提供的SDK,第二步:创建APP,申请app

IdentityServer4在Asp.Net Core中的应用(一)

  IdentityServer4是一套身份授权以及访问控制的解决方案,专注于帮助使用.Net技术的公司为现代应用程序建立标识和访问控制解决方案,包括单点登录、身份管理、授权和API安全。  下面我将具体介绍如何在.NetCore中实现OAuth授权,从最简单的授权模式开始,在上一篇对OAuth2.0的详细描述中,在客户端模式中,我们说它在严

Spring Security 实战干货:OAuth2第三方授权初体验

1\.前言现在很多项目都有第三方登录或者第三方授权的需求,而最成熟的方案就是OAuth2.0授权协议。SpringSecurity也整合了OAuth2.0,在目前最新的SpringSecurity5中整合了OAuth2.0的客户端,我们可以很方便的使用SpringSecurityOAuth2来实现相关的需求。接下来跟着胖哥

OAuth2.0最简向导(多图预警)

!(https://oscimg.oschina.net/oscnet/e9130d63a6854041adfb860495c04600.gif)OAuth2.0是目前最流行的授权机制,用来授权第三方应用,获取用户数据。这个标准比较抽象,使用了很多术语,初学者不容易理解。本文从最小数据单元开始一步一步揭开OAuth2.

SpringSecurity进阶:OAuth2.0详解

OAuth2是什么?OAuth是一个为了方便用户登入而使用的授权流程,他的优点是不需要向第三方平台暴露我们的用户名和密码,而是使用授权服务器颁发短期的token和效验token的方式开放部分资源给第三方平台OAuth是一个授权协议不是认证协议OAuth2的授权方式!(https://p1tt

Redis未授权访问漏洞复现学习

0x00前言前段时间看到想复现学习一下,然后就忘了越临近考试越不想复习!在这里插入图片描述(https://oscimg.oschina.net/oscnet/ec73a943a3d9e18184946ee4c4ca290e14f.jpg)常见的未授权访问漏洞Redis未授权访问漏洞MongoDB未授权访问漏

OAuth2.0 授权码理解 - HelloWorld