OAuth2.0 的四种授权方式

OAuth2.0是一种授权机制,分为授权码、隐藏式、密码式和客户端凭证四种授权方式。授权码方式最安全但复杂,适用于有前后端的Web项目;隐藏式适用于纯前端应用;密码式风险较高,用户直接提供用户名和密码;凭证式适用于无前端的命令行应用。令牌的使用需要在请求中携带,并可通过刷新令牌优雅地更新。
摘要由CSDN通过智能技术生成

OAuth 简单理解就是一种授权机制,它是在客户端和资源所有者之间的授权层,用来分离两种不同的角色。在资源所有者同意并向客户端颁发令牌后,客户端携带令牌可以访问资源所有者的资源。

OAuth2.0 是 OAuth 协议的一个版本,有 2.0 版本那就有 1.0 版本,有意思的是 OAuth2.0 却不向下兼容 OAuth1.0 ,相当于废弃了 1.0 版本。

举个小栗子解释一下什么是 OAuth 授权?

在家肝文章饿了定了一个外卖,外卖小哥 30 秒火速到达了我家楼下,奈何有门禁进不来,可以输入密码进入,但出于安全的考虑我并不想告诉他密码。

此时外卖小哥看到门禁有一个高级按钮 “一键获取授权”,只要我这边同意,他会获取到一个有效期 2 小时的令牌(token)正常出入。

OAuth2.0 授权方式
OAuth2.0 的授权简单理解其实就是获取令牌(token)的过程,OAuth 协议定义了四种获得令牌的授权方式(authorization grant )如下:

授权码(authorization-code)
隐藏式(implicit)
密码式(password):
客户端凭证(client credentials)
但值得注意的是,不管我们使用哪一种授权方式,在三方应用申请令牌之前,都必须在系统中去申请身份唯一标识:客户端 ID(client ID)和 客户端密钥(client secret)。这样做可以保证 token 不被恶意使用。

下面我们会分析每种授权方式的原理

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值