OAuth2密码授予类型和client_credential授权类型是否相同?

时间:2018-03-08 12:53:03

标签: laravel oauth-2.0 laravel-passport

据我所知,在搞乱Laravel Passport之前,密码授权类型是资源所有者类型,而 client_credential 适用于第一方应用,所以基本上路由受 client_credential保护可以自行访问令牌问题,

我的问题是从密码授予类型发出的令牌可以访问受client_credential保护的路由,受api:auth保护的路由无法通过 client_credential 令牌访问

1 个答案:

答案 0 :(得分:1)

这是两种不同的流程类型。

首先,您需要了解客户端和资源所有者之间的差异。这在协议的roles部分清楚地解释了。

  

资源服务器

     

托管受保护资源的服务器,能够接受和   使用访问令牌响应受保护的资源请求。

     

<强>客户端

     

代表网站发出受保护资源请求的应用程序   资源所有者及其授权。

现在,您提到的流程使用资源所有者和客户端的凭据。客户端凭据流中的客户端是机密客户端。这意味着他们与客户保密。

在资源所有者密码授予中,您通过提供资源所有者凭据从令牌端点获取令牌。对于客户端凭据授予类型,您可以通过呈现客户端凭据从令牌端点获取令牌。所以你可以看到它们是两种不同的流程。

根据实施情况,为这些流程发布的令牌可能具有不同的范围。这意味着,这些令牌可能具有不同的有效性或可能具有限制。此类限制与OAuth 2.0协议无关。