0

在我的工作中,我们正在决定 API 的标准。

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

通常是否有使用其中一个的好时机?

4

1 回答 1

0

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

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

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

于 2012-12-17T04:51:19.250 回答