OAuth v2中无用的client_secret

时间:2014-06-23 14:12:04

标签: api oauth

我想知道client_secret在OAuth v2中是否仍然有用。实际上,当您想要接收access_token时,您必须指定client_id& client_secret。这似乎是需要客户端凭据的唯一时刻。那为什么会有client_secret?不是client_id足以授权客户端。

我认为client_secret是从OAuth v1继承并用于签名但我可能错了......

1 个答案:

答案 0 :(得分:1)

我根本不是OAuth专家,但我首先想到的是client_id是公开的。例如,在Facebook上,您可以在许多网址中看到应用程序的client_id。

因此,如果这是唯一要发送以检索访问令牌的内容,我可以使用被盗的client_id并请求具有虚假身份的访问令牌。

此外,一些api授权您代表用户行事,有些还授权您代表oauth客户端本身行事。同样,如果你只使用client_id,我可以使用oauth客户端自己使用的api方法,并使用一个被盗的client_id来获取一些我无法访问的数据。

我认为这是client_secret的原因之一。