为什么OAuth要包含两个分开的值——访问令牌(access token)和访问令牌密钥(access token secret)?作为OAuth的使用者,我看到所有的建议都表明我应该将令牌(token)和密钥(secret)存储在一起,并基本上将其视为一个值。
那么规范为什么要首先要求两个不同的值呢?
为什么OAuth要包含两个分开的值——访问令牌(access token)和访问令牌密钥(access token secret)?作为OAuth的使用者,我看到所有的建议都表明我应该将令牌(token)和密钥(secret)存储在一起,并基本上将其视为一个值。
那么规范为什么要首先要求两个不同的值呢?
实际上,访问令牌密钥永远不会传输给提供商。相反,请求会传输访问令牌,然后使用密钥对请求进行签名。这就是为什么您需要同时具备两者:一个用于标识,一个用于保护。
有两个秘密,一个是令牌秘密,另一个是消费者秘密。秘密用于签署请求(生成OAuth签名),但不会在请求头中传输,其中令牌在头部发送以识别客户端并验证其是否具有访问权限。