考虑一个客户端直接访问(机器到机器)并且不需要特定于用户的身份验证的 API。我理解它的方式是client_credentials,客户端必须存储 aclient_id并且client_secret它用来获取和刷新令牌。使用 API 密钥,客户端只需存储密钥。在这种情况下,是什么让 OAuth 更安全?在我看来,如果 API 密钥永远不会被泄露,那么攻击者就无法伪装成预期的客户端。如果 API 密钥被泄露,它实际上与破坏client_idand相同client_secret,攻击者可以使用 and 获取令牌并访问 API 中的数据,冒充客户端。
编辑:澄清这是一个机器对机器的调用