美文网首页
OAuth2 原理概览

OAuth2 原理概览

作者: 阳光的小mi | 来源:发表于2021-09-10 11:54 被阅读0次

前言

OAuth2应用广泛,网上也不乏优秀的参考文章,想要快速了解OAuth2的朋友,可以参考阮一峰-OAuth2.0的一个简单解释。本文仅为个人理解,将OAuth的概念原理进行整理归纳,在查阅资料时,发现阮一峰老师的OAuth专题博文已将这一主题解析得相当透彻,因此下文不再赘述,直接引用作为内容填充,请阅读本文的读者务必点开引用链接一起阅读。

一、OAuth标准

OAuth2是关于授权认证的一种开放标准RFC6749,它允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。

1.1 角色

它引入了授权层,定义了4种角色。

  • Resource Own 资源所有者:能够授予对受保护资源的访问权限的实体。

  • Resource Server 资源服务器:托管受保护资源的服务器。

  • Client 客户端:发出受保护资源请求的应用程序。

  • Authorization Server 授权服务器:验证资源所有者身份成功后颁发令牌的服务器。

1.2 整体过程

  1. 客户端向资源所有者请求授权

  2. 资源所有者同意给客户端授权

  3. 客户端携带 2 得到的授权向授权服务器申请令牌

  4. 授权服务器对客户端进行验证,确认后并颁发令牌

  5. 客户端携带 4 得到的令牌向资源服务器请求被保护的资源

  6. 资源服务器验证令牌成功后,响应请求

oauth2_flow.png

二、客户端授权模式

OAuth2 支持4种授权方式,适用于不同场景。阮一峰-OAuth2的四种方式,讲的很细致很好理解,下面将这四种模式进行简单总结区分。

  • Authorization Code 授权码模式

    最安全最常用,比如使用微信登录第三方应用就是使用了授权码模式,具体可以了解移动应用微信开发指南。用于获取令牌和刷新令牌,适用于前后端合作的情况。

  • Implicit 简化模式

    因没有获取授权码这一过程,直接获取令牌,又称隐藏式授权码模式。安全性不高,不能获取刷新令牌,适用于纯前端的应用。

  • Resource Owner Password Credentials 密码模式

    直接使用 resource own 的用户名密码申请令牌,安全性不高,必须是用户高度信任的应用。

  • Client Credentials 客户端凭证模式

    直接通过 client_id 和 client_secret 获取令牌,不带用户信息,获取的是应用级的令牌。

参考

RFC6749

阮一峰-OAuth2的四种方式

阮一峰-OAuth2.0的一个简单解释

移动应用微信开发指南

相关文章

  • OAuth2 原理概览

    前言 OAuth2应用广泛,网上也不乏优秀的参考文章,想要快速了解OAuth2的朋友,可以参考阮一峰-OAuth2...

  • iOS Paper Collection - Login

    OAuth2授权原理2.授权漏洞

  • Spring OAuth2 开发指南(一):体系架构和开发概览

    Spring OAuth2 开发指南(一):体系架构和开发概览 [TOC] 一、开篇 《Spring OAuth2...

  • OAuth2中的access_token

    之前的一篇文章OAuth2的原理和应用对OAuth2进行了简单的介绍。OAuth2的关键技术就是令牌 (acces...

  • jemalloc原理概览

    jemalloc在linux的世界里声名鹊起,并被移植到多个平台。后起之秀的tcmalloc性能与之相近,虽有谷歌...

  • oauth2原理

    第一步获取code第二步通过code获取token第三步拿着token去验证 防止 直接通过code去访问被窃取

  • Spring Security Oauth2

    oauth2理解oauth2理解oauth2参考 oauth2流程 基本概念 Resource Owner: 资源...

  • 微服务安全

    OAuth2 白话OAuth2 什么是OAuth Spring Security OAuth2

  • 开源框架原理概览

    ARouter:一个好用的组件化通信解耦的框架 可对照该博文一起理解,该博文整个流程也讲的很详细[https://...

  • Spring OAuth2(JDBC)

    一、Spring OAuth2 Spring OAuth2是OAuth2协议的完整实现,如果你对OAuth2协议不...

网友评论

      本文标题:OAuth2 原理概览

      本文链接:https://www.haomeiwen.com/subject/iiwgwltx.html