初识OAuth2

博客介绍了使用OAuth2解决第三方授权问题,涉及资源拥有者、客户端、授权服务器和资源服务器。以小明用GitHub账号登录Chrome为例说明交互流程,即客户端经用户授权后向授权服务器请求访问通行证,再向资源服务器请求资源。还介绍了4种具体实现方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

解决第三方授权问题

主要涉及到

资源拥有者(RO):用户

客户端(应用)(C):用户正在操作使用的业务网站

授权服务器(AS):给用户授予数据访问权限的服务

资源服务器(RS):目的资源服务

实例

小明要使用GitHub账号授权登录chrome浏览器

其中小明为资源所有者,chrome浏览器为客户端,授权服务器为github授权服务器,资源服务器为GitHub资源服务器(用来返回小明在github中的头像、名称等)。

大致交互流程如下

客户端要访问某资源,需要用户授权允许访问,

用户允许访问后,

客户端到授权服务器请求相关资源访问通行证(access_token),

请求到后再到资源服务器请求所需资源。

具体实现业务场景逻辑是在上述流程中做详细细化或删减,分为如下4种

1.授权码

RO授权C访问相关权限后,C拼接自己的相关数据信息和鉴权方式(response_type=code)信息访问AS,AS验证并返回相关code等信息,客户端通过code进一步访问AS,AS返回通信证access_token.

2.隐式许可

相比方式1,省去了code的请求验证流程

RO授权C访问相关权限后,C拼接自己的相关数据信息和鉴权方式(response_type=token)信息访问AS,AS返回通信证access_token.

3.资源所有者密码定凭据

C将RO的用户名密码直接访问AS获取access_token

4.客户端凭据

C通过自己的特殊身份直接请求AS获取access_token

好文链接http://www.cnblogs.com/linianhui/p/oauth2-authorization.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值