当前位置: 首页 > 知识库问答 >
问题:

OAuth(访问令牌)与API密钥

邬令
2023-03-14

我遇到了很多文章,很多文章建议使用OAuth over API密钥。据我所知,在OAuth中,我们最终获得了访问令牌,它的有效期为很多天。例如,QuickBooks online OAuth令牌的有效期为6个月。

因此,访问令牌等同于API Key。无论谁得到它,都应该像API密钥一样保护它。OAuth调用应该通过HTTPS进行,类似于基于API Key的调用。

相对于OAuth的另一个优势是授权。但是我们可以用API Key模型做同样的事情。例如,我们可以在html" target="_blank">数据库中定义规则,就像这些API密钥可以访问这些API一样。

现在,OAuth的真正优势是什么?如果我们实现了OAuth,我们必须要求我们所有的客户机在他们的服务器中安装OAuth支持库。这对他们和我们来说都是一项复杂的任务。而在API Key模型中,它是一个简单的Web调用,没有其他额外的库和复杂性。

我的意图只是更好地理解OAuth,而不是比较

注意:
我不是在说谷歌

提前谢谢你的帮助。

共有2个答案

干永丰
2023-03-14

API密钥用于项目/服务,而令牌用于验证用户。遇到了一个很好的解释。何时以及为什么使用API密钥

巴博耘
2023-03-14

只有当您希望使服务的用户能够允许第三方客户端应用程序访问托管在您的服务中的他/她的数据而不显示他的/她的凭据(ID)时,才需要OAuth

真是一对API密钥

 类似资料:
  • 在一个脚本中,我试图用oauth令牌克隆Github存储库。 根据本教程: https://github.com/blog/1270-easier-builds-and-deployments-using-git-over-https-and-oauth 我应该能够像这样为它构建一个命令: 如果我使用正确的访问令牌手动尝试此操作,它仍会询问我的密码。 如果我在命令行上尝试它,我只是得到一个没有找到

  • 我正在使用Lusita的PHP Oauth库(https://github.com/Lusitanian/PHPoAuthLib)。 在用户在我的应用程序中获得授权后,我收到了访问令牌和访问令牌密钥的值。现在有了这些值,我想对API进行身份验证调用。如何使用Access Token、Access Token Secret以及Consumer Key和Consumer Secret的值进行调用?我不

  • 本文向大家介绍oauth 刷新访问令牌,包括了oauth 刷新访问令牌的使用技巧和注意事项,需要的朋友参考一下 示例 资源

  • null 很抱歉太啰嗦了。 提前谢了。

  • 我使用Oauth已经有一段时间了,但从来没有完全确定这四个术语之间的区别(以及每个术语的功能)。我经常看到(例如在Twitter公共API中) 消费者秘密: 和 但我从来都不知道他们到底在干什么。我知道Oauth有能力授权应用程序(让它们代表用户行事),但我不理解这四个授权条款之间的关系,希望得到解释。 基本上,我不确定访问令牌或令牌密钥是如何生成的,它们存储在哪里,以及它们之间或与使用者密钥和密

  • 使用KeyCloak时,访问令牌与用户信息令牌有何不同? 从OAuth2/OpenIDConnect中,我了解到访问令牌提供了用户已经通过身份验证的信息,您需要使用用户信息令牌来获取关于用户及其配置文件/角色等的更多信息。 当我看到访问令牌时https://jwt.io/而不是用户信息令牌。我能够获得与用户配置文件相同的信息 为什么会这样,使用Keycloak时访问令牌与用户信息令牌有何不同?