对于仅由其他Web服务使用的Web API,建议的身份验证类型是什么

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对于仅由其他Web服务使用的Web API,建议的身份验证类型是什么相关的知识,希望对你有一定的参考价值。

我们的任务是为一家分销公司构建一个Web API,其中包含一些已经拥有自己网站的转销商。

转售商通过自己的网络服务器接受来自客户的订单。订单验证后,转售商希望自动将订单数据转发给分销商。转售商的网络服务器会向我们的WebAPI发送带有身份验证和订单数据的请求 - 这样就不会有用户交互。

我想知道OAuth是否可用于验证来自转销商网站的请求。我读过的关于OAuth的大多数内容似乎都集中在用户与登录进行交互,但我们的场景主要是机器到机器。

如果不是OAuth,那么机器到机器类型通信的“典型”认证机制是什么?

答案

OAuth2中有4种不同的授权类型。最适合您的用例的是“客户端凭据”授权类型。

RFC 6749说:

客户端凭证通常用作授权授权,通常是在客户端代表自己(客户端也是资源所有者)时,或者基于先前与授权服务器一起安排的授权请求访问受保护资源。

请注意“代表自己”这一短语而不是“代表用户”。

在此流程中,客户端通过提供适当的客户端ID和客户端密钥直接从授权服务器获取访问令牌。

以上是关于对于仅由其他Web服务使用的Web API,建议的身份验证类型是什么的主要内容,如果未能解决你的问题,请参考以下文章

Web 服务客户端证书/身份验证最佳实践的解决方案

阿里大牛私下赚钱,都在使用的一些免费API接口最佳总结建议收藏

RESTful API 与 Web 服务 API

用于客户端交互的 web api 或控制器

免费提供的 Web 服务/API [关闭]

asmx 到 WCF 或 Web API