【问题标题】:What's the future of OAuth 1?OAuth 1 的未来是什么?
【发布时间】:2025-12-03 06:45:02
【问题描述】:

我将开始为我的开源项目编写 API。 我应该使用 OAuth 2 还是 OAuth 1 进行身份验证?

我对 OAuth 1 的主要担忧是,如果 OAuth 1 很快就会过时,我不想花时间编写基于它的 API。

我的问题是 - OAuth 1 会很快过时吗?另外,我认为从 API 的最终用户的角度来看,OAuth 2 似乎更容易实现。

我应该只编写 OAuth2 API 而忘记 OAuth 1 还是有充分的理由暂时使用 OAuth 1?

【问题讨论】:

    标签: oauth oauth-2.0


    【解决方案1】:

    使用 OAuth 2.0。它是稳定的并准备好实施。此时没有任何人应该部署 OAuth 1.0 的理由。 2.0 更简单、更安全、更健壮。

    至于 1.0,协议已经发布,任何人都可以随心所欲地使用它。它是一个信息 RFC,并且将保持这种状态。但是,一旦 2.0 发布,1.0 将被标记为过时。这些 IETF 官僚机构对您没有任何影响。

    【讨论】:

      【解决方案2】:

      OAuth 2 处于草稿阶段(目前正在撰写,草稿 16),但 OAuth 1 已经在 RFC (RFC 5849) 中。

      OAuth 2 授权流程比 OAuth 1 更容易,但您可能会遇到的情况是您必须选择要实施的草案并坚持下去。当 OAuth 2 的 RFC 发布时,您必须遵守它。

      插件:如果 OAuth 1 将被废弃,则 RFC 将被废弃。 IETF 会将 RFC 置于“历史”状态。很有可能,他们可能使 OAuth 2 成为 RFC 并将 OAuth 1 RFC 历史化。在此之前,OAuth 1 一直有效。

      我希望这个小信息可以帮助到你。

      【讨论】:

      • OAuth 1 是否有可能很快过时?我当然不想写在一年左右就会过时的东西。
      【解决方案3】:

      您应该考虑您的用户(开发人员)并据此选择合适的 API。他们可能有经验或偏好吗?如果不是,我倾向于选择 OAuth2。您可能还想根据您正在处理的组织类型做出决定。我曾与那些偏爱旧协议的人打过交道,因为他们觉得这些协议更成熟、更安全。这并不总是合理的,但有时值得考虑。

      有一些关于设计决策(why a new version?) 驱动 Oauth2 的信息可用。

      【讨论】:

        【解决方案4】:

        我真的很担心 OAuth 的未来。自从 OAuth 的创始人之一 Eran Hammer 离开了该组织,后来 David Recordon 跟随他。

        他们担心 OAuth 2.0 的安全性和漏洞。这就是 Hammer 对 OAuth2.0 的描述

        更复杂、更难互操作、更没用、更不完整,并且 最重要的是,安全性较低。

        可能是时候为 OAuth 用户查看 SAML。

        【讨论】: