【问题标题】:When is a good time to use an API key over oAuth in an API什么时候是在 API 中使用 API 密钥而不是 oAuth 的好时机
【发布时间】:2012-12-02 20:34:08
【问题描述】:

我们正在为我的工作确定 API 标准。

我见过一些 API 使用 API 密钥。我见过其他人使用用户名和密码的完全身份验证(例如 oAuth2)。

一般来说,是否有使用其中一个的好时机?

【问题讨论】:

  • oauth 永远不会看到用户名或密码,消费者只是向服务提供者发送和接收各种令牌,直到它通过身份验证。

标签: json api rest oauth


【解决方案1】:

OAuth 非常适合“三方身份验证”场景(第一方:您的 API 服务器,第二方:使用您的 API 的应用,第三方:代表其使用 API 的用户)。例如,假设 Instagram 应用程序(第二方)代表用户 John Doe(第三方)将照片上传到 Facebook API(第一方)以显示在他的 Facebook 墙上。

但是,许多 API 没有这种 3 方场景 - 只有一个 API 和一个应用程序,与任何最终用户特定信息无关。例如,如果一家经纪公司提供股票报价 API,这是一个两方方案,因为股票报价并非特定于最终用户。 (但是,如果有一个 API 可以访问某人的股票投资组合,那就是 3 方场景)。

对于 3 方场景,此时 OAuth 几乎已成为标准。对于 2 方场景,即使可以使用 OAuth,但实际上通常会使用更简单的身份验证方案(例如,在 URL 中仅使用 API 密钥,并使用 HTTPS 对中介隐藏 URL)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-22
    • 1970-01-01
    • 2012-06-15
    • 2011-06-26
    • 2012-07-17
    • 2012-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多