2

叫我新手,叫我笨蛋,给这个话题打分。随心所欲,我只是来这里问一个问题,并希望从中学到一些东西。

所以我今天一直在为我的网站制作一个 API(很好地尝试),并且我在 Twitter、Foursquare、Tumblr 等最流行的网站 API 上注意到了这个“东西”,称为“OAuth”。根据我今天的研究,我了解到这基本上是一种为消费者提供令牌以访问来自提供者的受限数据的方式,具体取决于用户选择的内容,而无需用户交出密码和用户名。

但是为什么我必须使用 OAuth,为什么我不能给消费者密钥提供一个 API 而他们只是使用它呢?然后,我将查看用户是否允许访问该应用程序,并且他们必须授予该应用程序访问权限才能从他们的帐户中获取信息,例如照片。

让我感到困惑的是为什么 Tumblr API 会同时使用这两者。它在阅读博客详细信息时接缝,他们使用简单的api 密钥,但在博客上发布您需要OAuth 签名

4

1 回答 1

2

OAuth 是一种协议,有一些专家组定义的一组规范来定义如何共享数据。基本上你看到的只是OAuth机制的一部分,有很多的通信和握手机制来保证用户数据的安全,同时避免未经授权的数据访问。

OAuth 机制在 2 个级别退出

  1. 三足认证
  2. 两足认证

两者都有其积极和消极的一面,并且有一套程序需要注意安全性和数据完整性。

仅允许基于 access_token/consumer 密钥的访问实际上是一种非常薄弱的​​安全机制,并且很容易被任何碰巧访问您的消费者密钥的人入侵,而 OAuth 系统通过共享时间限制的 access_token 来确保。

有关详细信息,请参阅此线程oauth-2-0-benefits-and-use-cases-why

于 2012-07-24T09:50:51.567 回答