Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有和没有用户上下文的OAuth API_Api_Rest_Authentication_Architecture_Oauth - Fatal编程技术网

有和没有用户上下文的OAuth API

有和没有用户上下文的OAuth API,api,rest,authentication,architecture,oauth,Api,Rest,Authentication,Architecture,Oauth,我将在设计阶段编写一个新的RESTful API。和我交谈过的几个人一直在告诉我OAuth的事,所以我正在做一些家庭作业 有一件事我没有真正看到,也许没有很多(没有人?)在做,但我希望我正在开发的这个API能够在有或没有用户上下文的情况下运行 基本上,如果使用经过身份验证的用户调用API,则会从用户的首选项加载一些参数。但我想对其进行结构设计,以便在没有用户的情况下调用相同的调用,在这种情况下,它们需要从用户帐户读取的额外参数 如果我想使用OAuth作为基于用户的方法签名的身份验证组件,那么实现

我将在设计阶段编写一个新的RESTful API。和我交谈过的几个人一直在告诉我OAuth的事,所以我正在做一些家庭作业

有一件事我没有真正看到,也许没有很多(没有人?)在做,但我希望我正在开发的这个API能够在有或没有用户上下文的情况下运行

基本上,如果使用经过身份验证的用户调用API,则会从用户的首选项加载一些参数。但我想对其进行结构设计,以便在没有用户的情况下调用相同的调用,在这种情况下,它们需要从用户帐户读取的额外参数

如果我想使用OAuth作为基于用户的方法签名的身份验证组件,那么实现起来会很麻烦吗?将它们构建为两个独立的API会更好吗

我的另一个目标是,如果可能的话,在两种场景中使用相同的应用程序密钥/应用程序机密范例

为了让您对我的意思有一个更具体的了解,想象一下我希望在API中支持的psuedo函数签名

/**
 * Search, when called with a user. Here I'd like to authenticate via OAuth
 */
function search(string search, object user)

/**
 * Search, when called without a user requires more arguments.
 * These calls require application key/application secret
 * but no user authentication.
 */
function search(string search, object coupon_preferences, object store_preferences)
OAuth 2.0(RFC 6749)将流定义为客户端凭据授予

在流程中,客户端应用程序访问令牌端点,OAuth授权服务器向客户端发出访问令牌,而无需任何用户身份验证/授权


有关详细信息,请参见RFC 6749的“”。

没错,因此基本上能够支持无需身份验证/授权的呼叫是OAuth的一个组成部分。谢谢你。