OAuth2的介绍

OAuth2是一种授权框架,解决了第三方应用访问服务端受保护资源的问题。它定义了资源拥有者、资源服务器、客户端和授权服务器4种角色,并通过一系列步骤完成授权流程,包括获取AuthorizationCode和access token。与OAuth1相比,OAuth2使用短期access token和长期refresh token提高安全性,且通过HTTPS发送减少实现成本。OAuth2主要用于授权,而OpenID侧重于身份验证。
摘要由CSDN通过智能技术生成

OAuth2 诞生背景

在传统的客户端-服务端模型中,第三方应用如何查询和操作服务端的受保护的资源是一个问题
   简单举几个例子,用户浏览一个网站,想要在其网站上留言,往往需要进行注册登录操作,由于流程过于复杂,提高了用户的操作成本.再比如说第三方机构想要在用户许可后获得其信用积分,或者在其社交平台上发布消息.显然用户不能直接在第三方机构上输入用户信息.Oauth的诞生可以解决上述两个问题.第一个问题本质上就是第三方应用查询用户信息功能,只需要确认该用户存在,该第三方用户就承认该用户注册成功.第二个问题显然是第三方机构操作服务端受保护的资源的例子.

OAuth2 角色设定

Oauth2定义了4种角色
resource owner  资源拥有者
指的是一个可以授权访问被保护资源的个体,例如一个个实体用户,他们的用户信息就是资源。

resource server 资源服务器
指的是用来托管受保护的资源,例如某个具体具体服务模块

client 客户端
指的是利用资源拥有者的授权信息去请求被保护的资源的各种第三方服务,例如第三方服务机构

authorization server 授权服务器
在资源拥有者授权后,向客户端授权(颁发 access,tokens)的服务器,例如支付宝验证登陆
资源服务器与授权服务器之间的交互是属于被访问者自己内部的事情,资源服务器与授权服务器可以是同一个。对于支付宝来说,一个授权服务器,可以向多个资源服务器颁发acess token服务

OAuth2  授权流程

step 1:客户端预先在授权服务器上注册,获得app_id
step 2:资源拥有者向客户端请求访问
step 3:客户端需要对该资源拥有者进行身份验证,遂重定向至授权服务器
step 4:在授权服务器上,资源拥有者同意给予客户端授权A

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值