当前位置:首页 > 高等教育 > 图文 >

oauth2认证的4种模式

夏天 发布时间:2023-06-21 22:59:28

oauth2认证的4种模式分别是:授权码模式、隐式授权模式/简化模式、密码模式、客户端凭证模式。OAuth2是开放授权的一个标准,允许用户授权B应用不提供帐号密码的方式去访问该用户在A应用服务器上的某些特定资源。
oauth2认证的4种模式

oauth2认证的4种模式介绍


一、授权码模式

授权码模式(authorization code)是功能最完整、流程最严密的授权模式,code保证了token的安全性,即使code被拦截,由于没有app_secret,也是无法通过code获得token的。在授权码模式中,存在如下四种角色:

1、资源所有者:只需要允许或拒绝第三方应用获得授权;

2、第三方应用:申请成为资源服务器的第三方应用,获取资源服务器提供的资源;

3、授权服务器:提供授权许可code、令牌token等;

4、资源服务器:提供给第三方应用注册接口,需要提供给第三方应用app_id和app_secret,提供给第三方应用开放资源的接口。
 

二、隐式授权模式/简化模式

和授权码模式类似,只不过少了获取code的步骤,是直接获取令牌token的,适用于公开的浏览器单页应用,令牌直接从授权服务器返回,不支持刷新令牌,且没有code安全保证,令牌容易因为被拦截窃听而泄露。
 

三、密码模式

密码模式是用户直接将自己的用户名密码交给client,client用用户的用户名密码直接换取AccessToken。这种模式十分简单,但是却意味着直接将用户敏感信息泄漏给了client,因此这就说明这种模式只能用于client是我们自己开发的情况下。也就是说,密码模式一般用于我们自己开发的,第一方原生App或第一方单页面应用。
 

四、客户端凭证模式

这是一种最简单的模式,只要client请求,我们就将AccessToken发送给它。同时,这种模式也是最不安全的模式,这就要求我们对client完全的信任,而client本身也是安全的。因此,这种模式一般用来提供给我们完全信任的服务器端服务。在这个过程中不需要用户的参与。

 

最新知识

TOP10

周榜 月榜