为什么OAuth设计为具有请求令牌和访问令牌?

Mor*_*eng 37 protocols oauth token

在OAuth协议中,服务使用者将要求用户在服务提供者域中授权请求令牌,然后从服务提供者交换请求令牌获取访问令牌.

我想知道为什么OAuth被设计为在协议中有两个令牌.

为什么不在此过程中使用一个令牌呢?也就是说,用户将授权令牌,并且服务消费者将使用令牌从提供者检索信息.

Ber*_*t F 28

出于可用性和安全性原因.

初学者OAuth指南:

https://hueniverse.com/beginners-guide-to-oauth-part-iii-security-architecture-e9394f5263b5

...虽然这主要是关于OAuth规范如何演变的工件,但是双令牌设计提供了一些可用性和安全性功能,这使得保持在规范中是值得的.OAuth在两个渠道上运作:用于吸引用户和请求授权的前台频道,以及消费者用于直接与服务提供商互动的后台频道.通过将访问令牌限制到反向通道,令牌本身仍然隐藏在用户之外.这允许访问令牌具有特殊含义并且具有比请求授权时暴露给用户的前通道请求令牌更大的尺寸,并且在某些情况下需要手动输入(移动设备或机顶盒) .

===

请注意,这个问题是一个骗局

为什么我们必须在OAuth中"更改令牌凭据的临时凭据"?

如果初学者指南中的解释不清楚,请阅读@npdoty对它的看法.

  • 链接 OAuth 初学者指南似乎已损坏。此外,“请求令牌”一词目前似乎未使用。它是否类似于 [The OpenIdConnect 1./OAuth2 文档](http://openid.net/specs/openid-connect-core-1_0.html) 中的授权代码? (2认同)