oauth要求

时间:2012-05-03 13:04:29

标签: web-services oauth credentials

我需要使用webservice连接到另一个Web应用程序。该Web应用程序使用OAuth协议连接到它们的api。我是OAuth的新手,但我确实阅读了文档:D。 我的问题是,要将我的Web应用程序与他们连接,我需要从他们那里获得哪些数据? 我基本上需要获取资源所有者的所有数据。

我想我需要:

  • 1)来自该Web应用程序的消费者密钥和消费者密钥 公司
  • 2)来自资源所有者的令牌凭证

我需要这个信息吗?

我可以保存资源所有者令牌凭据,以便将来获取数据而无需资源所有者登录吗?

在他们的网络应用程序中,它说我可以从他们那里获得以下信息:

  • OAuth访问令牌和机密 - >这些是令牌凭证 资源所有者?
  • OAuth服务密钥和秘密 - >这是什么?

3 个答案:

答案 0 :(得分:1)

我遵循了这个Tutorial,这很容易理解。

答案 1 :(得分:1)

  

我需要这个信息吗?

是。您需要资源所有者通过OAuth流授权您的应用程序。这由令牌凭证表示(以前称为访问令牌)。

  

我可以保存资源所有者令牌凭据,以便将来获取数据而无需资源所有者登录吗?

是。令牌凭据在到期时间,您可以访问的资源类型等方面可能有限制。但是如果令牌凭据已过期(或资源所有者自己无效) - 您的请求将不被接受,您将不得不请资源所有者进行新授权。

  

OAuth访问令牌和机密 - >这些是资源所有者的令牌凭证吗?

是。直到最近,令牌凭证在规范中被称为访问令牌,有关名称更改的信息可以在此处找到:http://tools.ietf.org/html/rfc5849#section-1.1

  

OAuth服务密钥和密码 - >这些是什么?

这些很可能是消费者的关键和秘密。

答案 2 :(得分:0)

以下是使其全部正常运行的流程序列。

  1. 在API提供程序(在您的案例中为Web应用程序)上注册。这将为您生成客户端ID和客户端密码。

  2. 交换客户端ID,客户端密码,最终用户ID /密码(http auth标头中的base64编码格式),范围,使用API​​提供商的授权服务授予并获取授权码。

  3. 使用API​​提供商的令牌服务交换客户端ID,客户端密码,授权码并获取令牌。

  4. 将此令牌与其他查询参数一起使用以继续API请求。

  5. 以上序列适用于grant_type = code。如果您要使用任何其他授权类型,则#2不适用,而在#3中,您提供最终用户ID /密码以直接获取令牌。