5

通常,当 Web 服务需要授权第 3 方访问安全资源时,会使用 OAuth。

但是,如果我有自己的移动应用程序和自己的 Web 服务,并且在可预见的将来我不会将我的 API 暴露给 3rd 方应用程序,那么是否有任何理由使用 OAuth 来验证用户身份?在这种情况下使用 OAuth 的优缺点是什么?

4

1 回答 1

3

以与第 3 方相同的方式使用您自己的 API 的最大优势之一是您正在对自己的系统进行dogfood 测试。这样做往往会导致整体上更好的产品,因为您通常会更快地消除缺陷和打嗝,因为它们直接影响您并且不仅仅是第 3 方消费者通知您问题。

使用 OAuth 的另一个优点是您不必重新发明轮子,而且它已经是一个非常受支持的机制。用户也相当熟悉它,因此与您走不同的路线相比,您可以保持进入(和维护)的门槛更低。

由于您不希望立即将 API 公开给其他任何人,因此优势是,正如您所怀疑的那样,更小,但是如果您想在路上公开它,那么通过强迫自己使用,您将领先于游戏数英里它就在门口。

一个缺点是 OAuth 比其他可能的身份验证机制更复杂一些,但我仍然认为不重新发明轮子的净收益超过了轻微的额外复杂性。

于 2012-11-06T16:21:43.247 回答