CN103220259A - Oauth API的使用、调用方法、设备及系统 - Google Patents
Oauth API的使用、调用方法、设备及系统 Download PDFInfo
- Publication number
- CN103220259A CN103220259A CN2012100188774A CN201210018877A CN103220259A CN 103220259 A CN103220259 A CN 103220259A CN 2012100188774 A CN2012100188774 A CN 2012100188774A CN 201210018877 A CN201210018877 A CN 201210018877A CN 103220259 A CN103220259 A CN 103220259A
- Authority
- CN
- China
- Prior art keywords
- oauth
- interface
- oauth api
- client
- api
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
Abstract
本发明提供Oauth API的使用、调用方法、设备及系统。该使用Oauth API的方法包括:接收注册Oauth API的注册信息;根据注册信息生成Oauth API调用关联接口,并将其与注册的Oauth API绑定,生成绑定信息;接收增加Oauth API消息并响应,生成与所述注册的Oauth API对应的客户端请求Oauth API接口、Oauth API返回信息处理接口和客户端客户序列号管理接口;接收发布应用消息,响应所述发布应用消息,生成包括所述客户端请求Oauth API接口、所述Oauth API返回信息处理接口和所述客户端客户序列号管理接口的部署包;将所述绑定信息和所述部署包发送至所述应用运行引擎,以使所述应用运行引擎根据所述绑定信息和所述部署包完成Oauth API调度。
Description
技术领域
本发明涉及授权访问技术,尤其涉及一种Oauth API的使用、调用方法、设备及系统,属于通信技术领域。
背景技术
一种开放授权协议(An open protocol to allow secure API authorization in asimple and standard method from desktop and web applications,Oauth)作为目前业界最为流行的第三方API鉴权授权访问协议已在互联网上广泛使用,该标准能够让用户在不暴露用户密钥的情况下将用户在某个服务提供商保存的隐私信息暴露给第三方应用,例如谷歌、新浪、腾讯等均基于Oauth标准发布了丰富的API。通过Oauth协议建立了不同服务的信任机制,极大的促进了互联网的开放。
虽然目前服务提供商根据Oauth协议提供API已经可以达到了访问资源的保护的目的,但对于使用开放授权应用编程接口(Oauth ApplicationProgramming Interface,Oauth API)的开发者来讲,只能通过编写代码的方式使用Oauth API。例如通过引用Oauth API提供商(Provider)提供的软件开发工具包(Software Development Kit,SDK),通过编写代码调用SDK中的认证接口和业务接口,紧耦合Oauth授权逻辑在应用代码,以此来完成集成Oauth API的工作。开发者以编写代码方式使用Oauth API,这种使用Oauth API的方法复杂且低效,从而暴露出了如何高效使用Oauth API的问题。
发明内容
针对现有技术中存在的缺陷,本发明提供一种Oauth API的使用、调用方法、设备及系统,以实现对Oauth API的高效使用。
根据本发明的一方面,提供一种使用Oauth API的方法,包括:
接收注册Oauth API的注册信息;
根据所述注册信息生成Oauth API调用关联接口;
绑定所述Oauth API调用关联接口与注册的Oauth API,生成绑定信息;
接收增加Oauth API消息,响应所述增加Oauth API消息,生成与所述注册的Oauth API对应的客户端请求Oauth API接口、Oauth API返回信息处理接口和客户端客户序列号管理接口;
接收发布应用消息,响应所述发布应用消息,生成包括所述客户端请求Oauth API接口、所述Oauth API返回信息处理接口和所述客户端客户序列号管理接口的部署包;
将所述绑定信息和所述部署包发送至所述应用运行引擎,以使所述应用运行引擎根据所述绑定信息和所述部署包完成Oauth API调度。
根据本发明的另一方面,还提供一种应用开发平台,包括:
Oauth API注册模块,用于接收注册Oauth API的注册信息;
调用关联接口生成模块,用于根据所述注册信息生成Oauth API调用关联接口;
绑定模块,用于绑定所述Oauth API调用关联接口与注册的Oauth API,生成绑定信息;
使用接口生成模块,用于接收增加Oauth API消息,响应所述增加OauthAPI消息,生成与所述注册的Oauth API对应的客户端请求Oauth API接口、Oauth API返回信息处理接口和客户端客户序列号管理接口;
部署模块,用于接收发布应用消息,响应所述发布应用消息,生成包括所述客户端请求Oauth API接口、所述Oauth API返回信息处理接口和所述客户端客户序列号管理接口的部署包;
发送模块,用于将所述绑定信息和所述部署包发送至所述应用运行引擎,以使所述应用运行引擎根据所述绑定信息和所述部署包完成Oauth API调度。
根据本发明的又一方面,还提供一种Oauth API调用方法,包括:
拦截客户端请求消息,为所述客户端分配客户序列号,并存储客户序列号;
接收客户端通过调用客户端请求Oauth API接口发送的携带有所述客户序列号的Oauth API调用请求;
根据所述Oauth API调用请求所携带的客户序列号对所述Oauth API调用进行鉴权,并在鉴权通过后,获取与请求调用的Oauth API对应的接口绑定信息;
根据所述接口绑定信息进行授权认证,获取访问令牌;
将所述访问令牌注入所述Oauth API调用请求,并将注入所述访问令牌的Oauth API调用请求发送至Oauth提供商,以使所述Oauth API响应注入所述访问令牌的Oauth API调用请求并返回Oauth API返回信息;
将所述Oauth API返回信息返回至客户端,以完成Oauth API调用。
根据本发明的再一方面,还提供一种应用运行引擎,包括:
客户端客户序列号管理模块,用于拦截客户端请求消息,为所述客户端分配客户序列号,并存储客户序列号;
Oauth API调用请求接收模块,用于接收客户端通过调用客户端请求Oauth API接口发送的携带有所述客户序列号的Oauth API调用请求;
鉴权模块,用于根据所述Oauth API调用请求所携带的客户序列号对所述Oauth API调用进行鉴权,并在鉴权通过后,获取与请求调用的Oauth API对应的接口绑定信息;
授权认证模块,用于根据所述接口绑定信息进行授权认证,获取访问令牌;
Oauth API调用模块,将所述访问令牌注入所述Oauth API调用请求,并将注入所述访问令牌的Oauth API调用请求发送至Oauth提供商,以使所述Oauth API响应注入所述访问令牌的Oauth API调用请求并返回Oauth API返回信息;
Oauth API返回信息处理模块,将所述Oauth API返回信息返回至客户端,以完成Oauth API调用。
根据本发明的再一方面,还提供一种使用Oauth API的系统,包括本发明实施例的应用开发平台,和本发明实施例的应用运行引擎。
根据本发明提供的Oauth API的使用、调用方法、设备及系统,通过对Oauth认证逻辑进行抽象,形成一套可通用的认证接口,使开发者在开发应用时,由应用开发平台自动生成可执行的接口并注入到应用运行引擎,以使应用运行引擎判断客户端需要Oauth API调用时,可通过自动执行这些可执行接口来完成Oauth API调用。可以看出,在上述实施例的使用Oauth API的方法中,仅需开发者将Oauth API注册引用应用开发平台,即向应用开发平台提供Oauth API注册信息,其余可执行接口的生成及相关处理均由应用开发平台自动完成,极大地简化了应用开发程序,提高了开发效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为用于应用本发明实施例的使用Oauth API的方法的系统架构图。
图2为本发明实施例的使用Oauth API的方法的流程示意图。
图3为本发明另一实施例的使用Oauth API的方法的流程示意图。
图4为本发明实施例的应用开发平台的结构示意图。
图5为本发明实施例的Oauth API调用方法的流程示意图。
图6为本发明另一实施例的Oauth API调用方法的流程示意图。
图7为本发明又一实施例的Oauth API调用方法的流程示意图。
图8为本发明实施例的应用运行引擎的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为用于应用本发明实施例的使用Oauth API的方法的系统架构图。如图1所示,包括Oauth API提供商、客户端、应用运行引擎以及应用开发平台。其中,应用开发平台用于自动生成与Oauth API相关的可执行的接口,并注入到应用运行引擎中,以使应用运行引擎利用这些可执行接口完成客户端发起的Oauth API调用请求。下面从应用开发平台的角度对本发明实施例的使用Oauth API的方法进行详细说明。
图2为本发明实施例的使用Oauth API的方法的流程示意图。如图2所示,该使用Oauth API的方法包括以下步骤:
步骤S201,接收注册Oauth API的注册信息;
步骤S202,根据所述注册信息生成Oauth API调用关联接口;
步骤S203,绑定所述Oauth API调用关联接口与注册的Oauth API,生成绑定信息;
步骤S204,接收增加Oauth API消息,响应所述增加Oauth API消息,生成与所述注册的Oauth API对应的客户端请求Oauth API接口、Oauth API返回信息处理接口和客户端客户序列号管理接口;
步骤S205,接收发布应用消息,响应所述发布应用消息,生成包括所述客户端请求Oauth API接口、所述Oauth API返回信息处理接口和所述客户端客户序列号管理接口的部署包;
步骤S206,将所述绑定信息和所述部署包发送至所述应用运行引擎,以使所述应用运行引擎根据所述绑定信息和所述部署包完成Oauth API调度。
具体地,在上述实施例的使用Oauth API的方法中,开发者在应用开发平台中注册Oauth API,提供Oauth API的注册信息,其中,该Oauth API为Oauth API提供商提供的可用Oauth API。应用开发平台根据所注册Oauth API的注册信息自动生成用于实现支持Oauth API调用的Oauth API调用关联接口。此外,还可根据注册的Oauth API触发在应用开发平台中增加Oauth API。
根据上述实施例的使用Oauth API的方法,通过对Oauth认证逻辑进行抽象,形成一套可通用的认证接口,使开发者在开发应用时,由应用开发平台自动生成可执行的接口并注入到应用运行引擎,以使应用运行引擎判断客户端需要Oauth API调用时,可通过自动执行这些可执行接口来完成Oauth API调用。可以看出,在上述实施例的使用Oauth API的方法中,仅需开发者将Oauth API注册引用应用开发平台,即向应用开发平台提供Oauth API注册信息,其余可执行接口的生成及相关处理均由应用开发平台自动完成,极大地简化了应用开发程序,提高了开发效率。
图3为本发明另一实施例的使用Oauth API的方法的流程示意图。如图3所示,包括以下流程:
步骤S301,开发者在应用开发平台中注册Oauth域;
其中,需注册的信息包括以下在访问Oauth API时需要的域信息:
名称(Name),其用于标识注册的Oauth域的名称,例如为sina;
通信使用协议(Use SSL),通信使用协议包括超文本传输协议(HyperTextTransfer Protocol,HTTP)和安全超文本传输协议(Secure Hyper Text TransferProtocol,HTTPS)两种,注册时必须选择一种协议,例如选择HTTP;
请求令牌(Request Token)统一资源定位符(Uniform/Universal ResourceLocator,URL),其用于标识Oauth API提供商提供给客户用于获取请求令牌的服务地址,例如为“api.t.sina.com.cn/oauth/request_token”;
授权认证URL,其用于标识Oauth API提供商提供的用于用户授权的官方认证地址,例如为“api.t.sina.com.cn/oauth/authorize”;
访问令牌URL,其用于标识Oauth API提供商提供给客户用于获取访问令牌和访问签名的地址,例如为“api.t.sina.com.cn/oauth/access_token”;
应用序列号(consumer Key),其用于标识访问服务需要的应用序列号,由Oauth API提供商提供,例如为“4018652807”;
应用签名(consumer Secret),其用于标识访问服务需要的应用签名,由Oauth API提供商提供,例如为“5ee8fc57a5c8a9589a3933b92576a0b6”。
步骤S302,应用开发平台接收到注册Oauth域的消息后,记录Oauth域的注册信息,并通知应用运行引擎保存Oauth域的注册信息;
步骤S303,开发者在应用开发平台中注册Oauth API;
其中,开发者需提供的注册信息包括调用Oauth API所需要的API信息,其具体包括如下信息:
名称(Name),用于标识API名称,例如为“SinaUpdate”;
HTTP方法(method),用于标识调用服务的方法,调用服务的方法包括POST和GET两种方法,注册时只需选择一种,例如为“POST”;URL,用于标识API访问的URL,例如为“http://api.t.sina.com.cn/statuses/update.json”;
输入(Input)格式,用于标识输入数据格式,例如为urlencoded;
输出(Output)格式,用于标识API返回数据格式,API返回数据格式包括json和xml两种,选择其一,例如为“json”;
是否需要认证标识(Need Oauth),选择YES或NO,例如为“YES”;
域(Domain),用于关联一个已注册的Oauth域,例如为“sina”。
步骤S304,应用开发平台收到注册Oauth API消息后,生成服务端OauthAPI调用接口;
具体地,应用开发平台根据开发者注册的Oauth API的注册信息,生成在应用运行引擎调用Oauth API的接口,该服务端Oauth API调用接口是在认证成功后注入了请求签名信息和访问令牌后向Oauth API发送请求处理的接口。生成方式例如为:以注册Oauth API的名称为服务端Oauth API调用接口的名称,以“url”,”httpmethod”,“paramStr”,“signature”,“accessToken”为接口参数名称生成接口。生成的服务端Oauth API调用接口例如为:
步骤S305,应用开发平台生成Oauth授权认证接口;
应用开发平台收到生成Oauth授权认证接口消息时,自动生成Oauth授权认证所需要的接口。生成接口有两种方式,一种生成可执行的功能接口,一种生成与SDK对接接口,支持绑定动态生成的授权认证接口和部署在运行引擎中的OauthSDK的接口。
所生成的Oauth授权认证接口例如包括:
签名接口,生成方式例如为:以注册的OauthAPI名称和表示“签名”的关键词为接口名称,并以“url”,“key”,“paras”为参数名称生成签名接口。所生成的签名接口例如为:
function SinaUpdateSign(baseURI,KEY)
{return binb2str(core_sha1(str2binb(baseURI),baseURI.length*KEY));}
获取请求令牌接口,生成方式例如为:以注册的Oauth API名称和表示“RequestToken”的关键词为接口名称,并以“consumerkey”,“consumersecret”,“requestTokenURL”,“signature”为参数名称生成接口。所生成的获取请求令牌接口例如为:
Function
GetSinaUpdateRequestToken(consumerkey,consumersecret,requestTokenURL,sign)
{...}
请求用户授权接口,生成方式例如为:以注册的Oauth API名称和表示“用户授权”的关键词为接口名称,并以“requestToken”,“authoticationURL”为参数名称生成接口。所生成的请求用户授权接口例如为:
function SinaUpdateUserAuthirity(requestToken,authoticationURL)
{..}
获取Oauth访问令牌接口,生成方式例如为:以注册的Oauth API名称和表示“获取访问令牌”的关键词为接口名称,并以“requestToken”,“AccessTokenURL”,“Verifier”为参数名称生成接口。所生成的获取Oauth访问令牌接口例如为:
function
SinaUpdateGetAcceeToken(requestToken,AccessTokenURL,Verifier)
{...}
步骤S306,应用开发平台通过API名称绑定授权认证接口并定义调用接口流程。
具体地,绑定的接口可以是可执行的功能接口也可以是与SDK对接接口。当绑定SDK接口时,对调用Oauth API的所需的授权认证接口和OauthSDK中授权认证接口进行绑定映射。定义调用接口流程时,例如根据应用开发平台配置信息判断是绑定“应用自动触发Oauth认证授权”或“用户触发Oauth认证授权”流程,按照配置信息绑定不同的授权流程。
绑定信息包括:绑定的OauthAPI名称、服务端调用OauthAPI的接口名称及接口参数名称、签名对应的接口名称及其参数名称、获取RequestToken对应的接口名称及其参数名称、触发用户授权对应的接口名称及其参数名称、获取AccessToken对应的接口及其参数名称及绑定的接口执行顺序。
绑定接口的格式例如为:
步骤S307,应用开发平台通知应用运行引擎注入注册的Oauth API的注册信息及绑定信息;
步骤S308,开发者使用Oauth API开发业务,触发应用开发平台增加Oauth API;
步骤S309,应用开发平台接收到增加Oauth API消息后,生成触发Oauth认证流程界面。
具体地,应用开发平台若根据配置信息判断Oauth授权认证流程为“用户触发授权认证流程”,则生成的界面信息包括:1、用户触发认证授权入口(按钮/链接)2、用户触发授权认证流程后向服务端请求Oauth认证授权的接口,“Oauth API请求授权接口”,其中“Oauth API请求授权接口”包括参数“Oauth API名称”和“客户序列号(ClientKey)”。
步骤S310,应用开发平台生成“客户端Oauth API请求接口”;
具体地,所生成的客户端Oauth API请求接口用于在应用运行时,客户端通过调用该客户端Oauth API请求接口来请求应用运行引擎调用Oauth API。客户端Oauth API请求接口的生成方式例如为:以注册的Oauth API名称和表示“调用”的关键词为接口名称,并以“apiName”,“clientKey”,“paras”,“injectedInterfaceName”为参数名称生成接口。所生成的客户端OauthAPI请求接口例如为:
function invokeSinaUpdate(apiName,clientKey,paras,callback)
{...}
步骤S311,应用开发平台生成“Oauth API返回信息处理接口”;
具体地,所生成的Oauth API返回信息处理接口用于处理应用运行引擎调用OauthAPI成功后,OauthAPI返回的信息。OauthAPI返回信息处理接口的生成方式例如为:以注册的OauthAPI名称和表示“注入”的关键词为接口名称,并以“result”为参数名称生成接口定义信息。所生成的OauthAPI返回信息处理接口例如为:
function sinaUpdateInjected(result){...}
步骤S312,应用开发平台生成“客户端ClientKey管理接口”;
具体地,所生成的客户端ClientKey管理接口用于保存应用运行引擎分配给客户端的合法访问标识的ClientKey。客户端ClientKey管理接口的生成方式例如为:以表示“客户端key”关键词为接口名称,以表示“保存客户端key”的关键词为名生成一个功能方法,且其参数名称为“url”,再以表示“getClientKeyKey”的关键词为名生成一个无参数的功能方法,生成接口。所生成的客户端ClientKey管理接口例如为:
步骤S313,开发者发布应用;
步骤S314,应用开发平台生成部署包并部署。
具体地,应用开发平台接收到开发者发送的发布应用的消息后根据应用信息生成部署包并通知应用运行引擎进行部署。
图4为本发明实施例的应用开发平台的结构示意图。如图4所示,该应用开发平台包括:
Oauth API注册模块41,用于接收注册Oauth API的注册信息;
调用关联接口生成模块42,用于根据所述注册信息生成Oauth API调用关联接口;
绑定模块43,用于绑定所述Oauth API调用关联接口与注册的Oauth API,生成绑定信息;
使用接口生成模块44,用于接收增加Oauth API消息,响应所述增加OauthAPI消息,生成与所述注册的Oauth API对应的客户端请求Oauth API接口、Oauth API返回信息处理接口和客户端客户序列号管理接口;
部署模块45,用于接收发布应用消息,响应所述发布应用消息,生成包括所述客户端请求Oauth API接口、所述Oauth API返回信息处理接口和所述客户端客户序列号管理接口的部署包;
发送模块46,用于将所述绑定信息和所述部署包发送至所述应用运行引擎,以使所述应用运行引擎根据所述绑定信息和所述部署包完成Oauth API调度。
其中,使用接口生成模块44例如包括客户端请求Oauth API接口生成单元、Oauth API返回信息处理接口生成单元和客户端客户序列号管理接口生成单元。
上述实施例的应用开发平台使用Oauth API进行应用开发的流程与前述实施例的使用Oauth API的方法相同,故此处不再赘述。
根据上述实施例的应用开发平台,通过对Oauth认证逻辑进行抽象,形成一套可通用的认证接口,使开发者在开发应用时,由应用开发平台自动生成可执行的接口并注入到应用运行引擎,以使应用运行引擎判断客户端需要Oauth API调用时,可通过自动执行这些可执行接口来完成Oauth API调用。可以看出,在上述实施例的使用Oauth API的方法中,仅需开发者将Oauth API注册引用应用开发平台,即向应用开发平台提供Oauth API注册信息,其余可执行接口的生成及相关处理均由应用开发平台自动完成,极大地简化了应用开发程序,提高了开发效率。
进一步地,在上述实施例的应用开发平台中,所述注册令牌包括:所述注册的Oauth API的名称、请求方法、统一资源定位符、输入格式、输出格式、是否需要开放授权协议Oauth认证标识以及所述注册的Oauth API对应的Oauth域的域名。
进一步地,在上述实施例的应用开发平台中,还包括:
Oauth域注册模块,用于接收注册Oauth域的注册信息,所述注册的Oauth域与所述注册的Oauth API相对应。
进一步地,在上述实施例的应用开发平台中,调用关联接口生成模块包括:
服务端Oauth API调用关联接口生成单元,用于生成服务端Oauth API调用接口;
Oauth授权认证接口生成单元,用于生成授权认证接口。
进一步地,在上述实施例的应用开发平台中,绑定信息包括所述注册的Oauth API的名称、所述服务端Oauth API调用接口、所述授权认证接口,以及接口执行流程。
本发明实施例的Oauth API调用方法也可基于图1所示的系统架构来实现,其中该Oauth API调用方法由图1中所示的应用运行引擎来执行,下面从应用运行引擎的角度对本发明实施例的Oauth API调用方法进行说明。
图5为本发明实施例的Oauth API调用方法的流程示意图。如图5所示,该Oauth API调用方法包括以下步骤:
步骤S501,拦截客户端请求消息,为所述客户端分配客户序列号,并存储客户序列号;
步骤S502,接收客户端通过调用客户端请求Oauth API接口发送的携带有所述客户序列号的Oauth API调用请求;
步骤S503,根据所述Oauth API调用请求所携带的客户序列号对所述Oauth API调用进行鉴权,并在鉴权通过后,获取与请求调用的Oauth API对应的接口绑定信息;
步骤S504,根据所述接口绑定信息进行授权认证,获取访问令牌;
步骤S505,将所述访问令牌注入所述Oauth API调用请求,并将注入所述访问令牌的Oauth API调用请求发送至Oauth提供商,以使所述Oauth API响应注入所述访问令牌的Oauth API调用请求并返回Oauth API返回信息;
步骤S506,将所述Oauth API返回信息返回至客户端,以完成Oauth API调用。
在上述实施例的Oauth API调用方法中,应用运行引擎响应客户端请求执行Oauth API调用过程中所需涉及的接口绑定信息及全部可执行接口均由应用开发平台预先生成,具体生成过程与前述实施例的使用Oauth API的方法相同,故此处不再赘述。
根据上述实施例的Oauth API调用方法,通过由应用运行引擎自动使用应用开发平台提供的可执行接口来完成Oauth API调用,实现了Oauth API的便捷调用。
进一步地,在上述实施例的Oauth API调用方法中,授权认证的触发包括两种情形,即应用自动触发Oauth授权认证和用户触发Oauth授权认证。下面分别对这两种情形进行说明
图6为本发明另一实施例的Oauth API调用方法的流程示意图。如图6所示,由应用自动触发Oauth授权认证时,Oauth API调用方法包括以下流程:
步骤S601,用户通过客户端工具访问部署在应用运行引擎的应用,发起应用请求;
步骤S602,拦截客户端发送的应用请求,记录请求访问的第一URL;
步骤S603,为客户端分配唯一标识的客户序列号(ClientKey),并记录ClientKey;
其中,ClientKey值生成规则为:根据客户端IP、当前SessionID、应用名称、用户ID、GUID以及当前请求时间,通过HMAC-SHA1算法签名生成
步骤S604,根据步骤S602记录的URL和步骤S603生成的ClientKey重定向用户到带有ClientKey的第二URL;
其中,第二URL格式示例如下:
http://hostname/appname?ClientKey=ssdfd44541232322sdd
步骤S605,应用在客户端运行时调用“ClientKey管理接口”获取ClientKey值并保存;
步骤S606,客户端请求应用运行引擎调用OauthAPI,请求参数包括在步骤S605记录的ClientKey,调用的OauthAPI名称、调用OuathAPI需要的参数及客户端处理返回结果的接口名称。
步骤S607,应用运行引擎获取ClientKey并进行认证,以判断是否是合法ClientKey,认证方法例如如下:
1)检查在应用运行引擎是否记录了客户端提供的ClientKey,不存在则非法。
2)ClientKey进行反签名获取CientKey中对应的每一项信息
3)根据客户端请求获取客户端IP、当前SessionID、请求应用名称、用户ID
4)根据2)所获取信息和3)所获取的信息进行每项匹配,如果匹配则认为合法,否则非法。
步骤S608,根据请求信息获取并记录请求Oauth的应用URL、参数、OauthAPI名称、OauthAPI返回信息处理接口名称;
步骤S609,根据请求的OauthAPI名称,查询与之对应的接口绑定信息,该接口绑定信息即为应用开发平台使用OauthAPI流程中生成的绑定信息;
步骤S610,根据步骤S609获取的接口绑定信息,获取并执行Oauth授权认证接口,获取AccessToken;
具体地,获取AccessToken具体包括:
1)根据所述接口绑定信息获取授权认证接口,并执行所述授权认证接口;
2)执行触发用户授权接口重定向Oauth提供商授权页面时,设置Oauth提供商的CALLBACK为应用运行引擎接收认证结果服务的URL;
3)通过接收所述认证结果服务获取验证符,并获取访问令牌;
4)根据所存储的客户序列号、所述Oauth API标识和所述访问令牌,将所述客户序列号和所述Oauth API标识进行组合以作为记录所述访问令牌的标识,并记录所述访问令牌。
步骤S611,根据在先记录的ClientKey、OauthAPI名称,以及获取的AcceessToken,对ClientKey和OauthAPI重新进行HMAC-SHA1算法签名,生成的签名值作为记录AcceessToken的标识记录AccessToken。
步骤S612,根据在先记录的参数、AccessToken,执行“服务端OauthAPI调用接口”注入AccessToken,并发送请求给OauthAPI;
步骤S613,根据获取的OauthAPI返回信息、记录的注入结果的接口名称,执行“生成客户端脚本接口”生成动态脚本;
生成动态脚本示例如下:
步骤S614,通过推送生成的脚本到客户端完成注入脚本到客户端。
步骤S615,客户端执行注入的脚本并调用“OauthAPI返回信息处理接口”完成返回信息处理,例如显示和计算结果信息。
图7为本发明又一实施例的Oauth API调用方法的流程示意图。如图7所示,由用户触发Oauth授权认证时,Oauth API调用方法包括以下流程:
步骤S701,“客户端OauthAPI请求接口”收到调用OauthAPI消息后打开“客户端触发Oauth认证流程界面”,提示用户触发授权认证流程;用户触发认证授权流程后,请求应用运行引擎进行Oauth授权;“客户端请求OauthAPI接口”收到调用OauthAPI消息的内容包括:OauthAPI名称、授权成功后转向的业务页面URL、调用OauthAPI时对应的参数值;
步骤S702,应用运行引擎收到授权请求后,拦截请求并记录URL、请求授权的OauthAPI名称;
步骤S703,应用运行引擎分配一个唯一标识ClientKey作为客户端合法标识并记录ClientKey;
步骤S704,根据请求的OauthAPI名称获取其接口绑定信息;
步骤S705,根据绑定信息执行授权认证接口,获取AccessToken;
步骤S706,根据ClientKey和OauthAPI名称记录AccessToken;
步骤S707,重定向用户到由记录的URL和ClientKey组合生成的新的URL,客户端获取并记录ClientKey;
新的URL例如为:http://huawei.com?ClientKey=ssdfj123232323。
步骤S708,客户端根据ClientKey请求应用运行引擎调用OauthAPI;
步骤S709,获取并记录ClientKey、OauthAPI名称、请求URL、请求参数、回调接口名称;
步骤S710,若认证ClientKey合法,并判断已授权,则根据ClientKey和OauthAPI名称获取记录的AccessToken;若认证ClientKey非法则返回ClientKey无效信息,如果未授权则回到步骤S702重新进行授权;
步骤S711,注入获取的AccessToken到请求中,发送请求到Oauth提供商;
步骤S712,回调客户端接口,返回Oauth提供商返回信息。
在上述实施例的Oauth API调用方法中,通过以集中方式在服务器端执行授权认证,形成一对一模式,避免应用客户端与Oauth提供商直接交互的多对一模式,减少交互端点,能够降低敏感数据在互联网上传输的风险。
进一步地,在上述实施例的Oauth API调用方法中,根据所述接口绑定信息进行授权认证具体包括:
从所述接口绑定信息中获取授权认证接口,并运行所述授权认证接口完成授权认证;或
从所述接口绑定信息中获取与Oauth SDK中接口对应的接口映射信息,通过映射的接口名称及映射的参数名称调用所述Oauth SDK中的具体接口完成认证授权。
根据上述实施例的OauthAPI调用方法,采用通用的方式调用执行OauthAPI认证流程接口,避免使用不同Oauth提供商提供的Oauth API而引入不同提供商的SDK浪费空间。
图8为本发明实施例的应用运行引擎的结构示意图。如图7所示,该应用运行引擎包括:
客户端客户序列号管理模块81,用于拦截客户端请求消息,为所述客户端分配客户序列号,并存储客户序列号;
Oauth API调用请求接收模块82,用于接收客户端通过调用客户端请求Oauth API接口发送的携带有所述客户序列号的Oauth API调用请求;
鉴权模块83,用于根据所述Oauth API调用请求所携带的客户序列号对所述Oauth API调用进行鉴权,并在鉴权通过后,获取与请求调用的Oauth API对应的接口绑定信息;
授权认证模块84,用于根据所述接口绑定信息进行授权认证,获取访问令牌;
Oauth API调用模块85,将所述访问令牌注入所述Oauth API调用请求,并将注入所述访问令牌的Oauth API调用请求发送至Oauth提供商,以使所述Oauth API响应注入所述访问令牌的Oauth API调用请求并返回Oauth API返回信息;
Oauth API返回信息处理模块86,将所述Oauth API返回信息返回至客户端,以完成Oauth API调用。
上述实施例的应用运行引擎执行Oauth API调用的具体流程与上述实施例的Oauth API调用方法相同,故此处不再赘述。
根据上述实施例的应用运行引擎,通过自动使用应用开发平台提供的可执行接口来完成Oauth API调用,实现了Oauth API的便捷调用。
进一步地,在上述实施例的应用运行引擎中,所述客户端请求消息包括所述客户端请求访问的URL。
进一步地,在上述实施例的应用运行引擎中,所述客户端请求消息包括客户端请求调用的Oauth API标识、授权成功后转向的业务页面URL,以及调用Oauth API的相应参数值。
进一步地,在上述实施例的应用运行引擎中,所述授权认证模块具体包括:
第一处理单元,用于根据所述接口绑定信息获取授权认证接口,并执行所述授权认证接口;
第二处理单元,执行触发用户授权接口重定向Oauth提供商授权页面时,设置Oauth提供商的CALLBACK为应用运行引擎接收认证结果服务的URL;
第三处理单元,通过接收所述认证结果服务获取验证符,并获取访问令牌;
第四处理单元,根据所存储的客户序列号、所述Oauth API标识和所述访问令牌,将所述客户序列号和所述Oauth API标识进行组合以作为记录所述访问令牌的标识,并记录所述访问令牌。
本发明实施例还提供一种使用Oauth API的系统,包括上述任一实施例的应用开发平台和上述任一实施例的应用运行引擎。
根据上述实施例的使用Oauth API的系统,通过对Oauth认证逻辑进行抽象,形成一套可通用的认证接口,使开发者在开发应用时,由应用开发平台自动生成可执行的接口并注入到应用运行引擎,以使应用运行引擎判断客户端需要Oauth API调用时,可通过自动执行这些可执行接口来完成Oauth API调用。可以看出,在上述实施例的使用Oauth API的方法中,仅需开发者将Oauth API注册引用应用开发平台,即向应用开发平台提供Oauth API注册信息,其余可执行接口的生成及相关处理均由应用开发平台自动完成,极大地简化了应用开发程序,提高了开发效率。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (22)
1.一种使用开放授权应用编程接口Oauth API的方法,其特征在于,包括:
接收注册Oauth API的注册信息;
根据所述注册信息生成Oauth API调用关联接口;
绑定所述Oauth API调用关联接口与注册的Oauth API,生成绑定信息;
接收增加Oauth API消息,响应所述增加Oauth API消息,生成与所述注册的Oauth API对应的客户端请求Oauth API接口、Oauth API返回信息处理接口和客户端客户序列号管理接口;
接收发布应用消息,响应所述发布应用消息,生成包括所述客户端请求Oauth API接口、所述Oauth API返回信息处理接口和所述客户端客户序列号管理接口的部署包;
将所述绑定信息和所述部署包发送至所述应用运行引擎,以使所述应用运行引擎根据所述绑定信息和所述部署包完成Oauth API调度。
2.根据权利要求1所述的使用Oauth API的方法,其特征在于,所述注册令牌包括:所述注册的Oauth API的名称、请求方法、统一资源定位符、输入格式、输出格式、是否需要开放授权协议Oauth认证标识以及所述注册的Oauth API对应的Oauth域的域名。
3.根据权利要求1所述的使用Oauth API的方法,其特征在于,接收注册Oauth API的注册信息之前还包括:
接收注册Oauth域的注册信息,所述注册的Oauth域与所述注册的OauthAPI相对应。
4.根据权利要求1所述的使用Oauth API的方法,其特征在于,所述Oauth API调用关联接口包括服务端Oauth API调用接口和授权认证接口。
5.根据权利要求4所述的使用Oauth API的方法,其特征在于,所述绑定信息包括所述注册的Oauth API的名称、所述服务端Oauth API调用接口、所述授权认证接口,以及接口执行流程。
6.一种应用开发平台,其特征在于,包括:
Oauth API注册模块,用于接收注册Oauth API的注册信息;
调用关联接口生成模块,用于根据所述注册信息生成Oauth API调用关联接口;
绑定模块,用于绑定所述Oauth API调用关联接口与注册的Oauth API,生成绑定信息;
使用接口生成模块,用于接收增加Oauth API消息,响应所述增加OauthAPI消息,生成与所述注册的Oauth API对应的客户端请求Oauth API接口、Oauth API返回信息处理接口和客户端客户序列号管理接口;
部署模块,用于接收发布应用消息,响应所述发布应用消息,生成包括所述客户端请求Oauth API接口、所述Oauth API返回信息处理接口和所述客户端客户序列号管理接口的部署包;
发送模块,用于将所述绑定信息和所述部署包发送至所述应用运行引擎,以使所述应用运行引擎根据所述绑定信息和所述部署包完成Oauth API调度。
7.根据权利要求6所述的应用开发平台,其特征在于,所述注册令牌包括:所述注册的Oauth API的名称、请求方法、统一资源定位符、输入格式、输出格式、是否需要开放授权协议Oauth认证标识以及所述注册的Oauth API对应的Oauth域的域名。
8.根据权利要求6所述的应用开发平台,其特征在于,还包括:
Oauth域注册模块,用于接收注册Oauth域的注册信息,所述注册的Oauth域与所述注册的Oauth API相对应。
9.根据权利要求6所述的应用开发平台,其特征在于,所述调用关联接口生成模块包括:
服务端Oauth API调用关联接口生成单元,用于生成服务端Oauth API调用接口;
Oauth授权认证接口生成单元,用于生成授权认证接口。
10.根据权利要求9所述的应用开发平台,其特征在于,所述绑定信息包括所述注册的Oauth API的名称、所述服务端Oauth API调用接口、所述授权认证接口,以及接口执行流程。
11.一种Oauth API调用方法,其特征在于,包括:
拦截客户端请求消息,为所述客户端分配客户序列号,并存储客户序列号;
接收客户端通过调用客户端请求Oauth API接口发送的携带有所述客户序列号的Oauth API调用请求;
根据所述Oauth API调用请求所携带的客户序列号对所述Oauth API调用进行鉴权,并在鉴权通过后,获取与请求调用的Oauth API对应的接口绑定信息;
根据所述接口绑定信息进行授权认证,获取访问令牌;
将所述访问令牌注入所述Oauth API调用请求,并将注入所述访问令牌的Oauth API调用请求发送至Oauth提供商,以使所述Oauth API响应注入所述访问令牌的Oauth API调用请求并返回Oauth API返回信息;
将所述Oauth API返回信息返回至客户端,以完成Oauth API调用。
12.根据权利要求11所述的Oauth API调用方法,其特征在于,所述客户端请求消息包括所述客户端请求访问的URL。
13.根据权利要求11所述的Oauth API调用方法,其特征在于,所述客户端请求消息包括客户端请求调用的Oauth API标识、授权成功后转向的业务页面URL,以及调用Oauth API的相应参数值。
14.根据权利要求11至13任一所述的Oauth API调用方法,其特征在于,根据所述接口绑定信息进行授权认证,获取访问令牌具体包括:
根据所述接口绑定信息获取授权认证接口,并执行所述授权认证接口;
执行触发用户授权接口重定向Oauth提供商授权页面时,设置Oauth提供商的CALLBACK为应用运行引擎接收认证结果服务的URL;
通过接收所述认证结果服务获取验证符,并获取访问令牌;
根据所存储的客户序列号、所述Oauth API标识和所述访问令牌,将所述客户序列号和所述Oauth API标识进行组合以作为记录所述访问令牌的标识,并记录所述访问令牌。
15.根据权利要求11至13任一所述的Oauth API调用方法,其特征在于,根据所述Oauth API调用请求所携带的客户序列号对所述Oauth API调用进行鉴权具体包括:
判断是否记录有所述Oauth API调用请求所携带的客户序列号,若否则鉴权失败;
若是,则对所述客户序列号进行解密,获取所述客户序列号对应的明文信息,并根据所述客户端请求获取客户端互联网协议IP地址、当前会话ID、请求应用名称以及用户标识;
将所述明文信息与根据所述客户端请求获取的信息进行对应项匹配,若匹配则鉴权通过,若不匹配则鉴权失败。
16.根据权利要求11至13任一所述的Oauth API调用方法,其特征在于,将所述Oauth API返回信息返回至客户端具体包括:
根据所述Oauth API返回信息生成脚本并将所述脚本推送注入所述客户端;或
通过回调客户端接口,将所述Oauth API返回信息返回至所述客户端。
17.根据权利要求11至13任一所述的Oauth API调用方法,其特征在于,根据所述接口绑定信息进行授权认证具体包括:
从所述接口绑定信息中获取授权认证接口,并运行所述授权认证接口完成授权认证;或
从所述接口绑定信息中获取与Oauth SDK中接口对应的接口映射信息,通过映射的接口名称及映射的参数名称调用所述Oauth SDK中的具体接口完成认证授权。
18.一种应用运行引擎,其特征在于,包括:
客户端客户序列号管理模块,用于拦截客户端请求消息,为所述客户端分配客户序列号,并存储客户序列号;
Oauth API调用请求接收模块,用于接收客户端通过调用客户端请求Oauth API接口发送的携带有所述客户序列号的Oauth API调用请求;
鉴权模块,用于根据所述Oauth API调用请求所携带的客户序列号对所述Oauth API调用进行鉴权,并在鉴权通过后,获取与请求调用的Oauth API对应的接口绑定信息;
授权认证模块,用于根据所述接口绑定信息进行授权认证,获取访问令牌;
Oauth API调用模块,将所述访问令牌注入所述Oauth API调用请求,并将注入所述访问令牌的Oauth API调用请求发送至Oauth提供商,以使所述Oauth API响应注入所述访问令牌的Oauth API调用请求并返回Oauth API返回信息;
Oauth API返回信息处理模块,将所述Oauth API返回信息返回至客户端,以完成Oauth API调用。
19.根据权利要求18所述的应用运行引擎,其特征在于,所述客户端请求消息包括所述客户端请求访问的URL。
20.根据权利要求18所述的应用运行引擎,其特征在于,所述客户端请求消息包括客户端请求调用的Oauth API标识、授权成功后转向的业务页面URL,以及调用Oauth API的相应参数值。
21.根据权利要求18至20任一所述的应用运行引擎,其特征在于,所述授权认证模块具体包括:
第一处理单元,用于根据所述接口绑定信息获取授权认证接口,并执行所述授权认证接口;
第二处理单元,执行触发用户授权接口重定向Oauth提供商授权页面时,设置Oauth提供商的CALLBACK为应用运行引擎接收认证结果服务的URL;
第三处理单元,通过接收所述认证结果服务获取验证符,并获取访问令牌;
第四处理单元,根据所存储的客户序列号、所述Oauth API标识和所述访问令牌,将所述客户序列号和所述Oauth API标识进行组合以作为记录所述访问令牌的标识,并记录所述访问令牌。
22.一种使用Oauth API的系统,其特征在于,包括如权利要求6至10任一所述的应用开发平台,和如权利要求18至21任一所述的应用运行引擎。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210018877.4A CN103220259B (zh) | 2012-01-20 | 2012-01-20 | Oauth API的使用、调用方法、设备及系统 |
EP13738680.1A EP2806612B1 (en) | 2012-01-20 | 2013-01-21 | Method, device and system for using and invoking oauth api |
EP17187516.4A EP3301881B1 (en) | 2012-01-20 | 2013-01-21 | Method, device and system for using and invoking oauth api |
PCT/CN2013/070753 WO2013107403A1 (zh) | 2012-01-20 | 2013-01-21 | Oauth api的使用、调用方法、设备及系统 |
US14/335,518 US9430302B2 (en) | 2012-01-20 | 2014-07-18 | Method, device and system for using and invoking Oauth API |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210018877.4A CN103220259B (zh) | 2012-01-20 | 2012-01-20 | Oauth API的使用、调用方法、设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103220259A true CN103220259A (zh) | 2013-07-24 |
CN103220259B CN103220259B (zh) | 2016-06-08 |
Family
ID=48798660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210018877.4A Active CN103220259B (zh) | 2012-01-20 | 2012-01-20 | Oauth API的使用、调用方法、设备及系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9430302B2 (zh) |
EP (2) | EP3301881B1 (zh) |
CN (1) | CN103220259B (zh) |
WO (1) | WO2013107403A1 (zh) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104426719A (zh) * | 2013-09-11 | 2015-03-18 | 方正信息产业控股有限公司 | 基于oauth协议测试的数据传递方法与装置 |
CN104717647A (zh) * | 2013-12-13 | 2015-06-17 | 中国电信股份有限公司 | 业务能力鉴权方法、设备及系统 |
CN104732331A (zh) * | 2015-02-13 | 2015-06-24 | 腾讯科技(深圳)有限公司 | 分组管理方法、装置和系统 |
WO2016029595A1 (zh) * | 2014-08-27 | 2016-03-03 | 百度在线网络技术(北京)有限公司 | 开放平台的调用方法、装置、设备及非易失性计算机存储介质 |
CN105391725A (zh) * | 2015-11-27 | 2016-03-09 | 深圳市摩艾客科技股份有限公司 | 一种真人3d数据读取模块及其数据传输方法 |
CN105681259A (zh) * | 2014-11-20 | 2016-06-15 | 中兴通讯股份有限公司 | 一种开放授权方法、装置及开放平台 |
CN107018128A (zh) * | 2017-03-07 | 2017-08-04 | 西安电子科技大学 | 一种基于多域协同架构第三方应用授权认证方法 |
CN107196943A (zh) * | 2017-05-26 | 2017-09-22 | 浙江大学 | 一种隐私数据在第三方平台的安全展示实现方法 |
CN107220274A (zh) * | 2017-04-13 | 2017-09-29 | 江苏曙光信息技术有限公司 | 一种可视化数据接口集市实现方法 |
CN107835195A (zh) * | 2017-12-04 | 2018-03-23 | 灵动元点信息技术(北京)有限公司 | 一种分布式网络应用节点集成管理方法 |
CN108259432A (zh) * | 2016-12-29 | 2018-07-06 | 亿阳安全技术有限公司 | 一种api调用的管理方法、设备及系统 |
CN108418814A (zh) * | 2018-02-12 | 2018-08-17 | 广州市贝聊信息科技有限公司 | 基于dubbo框架的接口认证方法、装置及计算机可读存储介质 |
CN110287037A (zh) * | 2019-05-20 | 2019-09-27 | 平安科技(深圳)有限公司 | 分布式的智能api异步回调方法及装置 |
CN110704026A (zh) * | 2018-07-10 | 2020-01-17 | 武汉斗鱼网络科技有限公司 | 软件开发工具包的调用方法、装置、终端及可读介质 |
CN111274141A (zh) * | 2020-01-19 | 2020-06-12 | 苏州浪潮智能科技有限公司 | 一种api客户端的测试管理方法及装置 |
CN112131022A (zh) * | 2020-09-22 | 2020-12-25 | 深圳力维智联技术有限公司 | 开放api管理方法、装置、系统与计算机可读存储介质 |
CN113435898A (zh) * | 2021-07-09 | 2021-09-24 | 支付宝(杭州)信息技术有限公司 | 数据处理方法以及系统 |
CN115994004A (zh) * | 2023-03-22 | 2023-04-21 | 紫光同芯微电子有限公司 | 一种应用程序接口调用方法及装置 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9189622B2 (en) * | 2013-04-30 | 2015-11-17 | Vmware, Inc. | Static redirection for objective C |
CN103780396B (zh) * | 2014-01-27 | 2017-08-25 | 华为软件技术有限公司 | 令牌获取方法及装置 |
US10404699B2 (en) | 2014-02-18 | 2019-09-03 | Oracle International Corporation | Facilitating third parties to perform batch processing of requests requiring authorization from resource owners for repeat access to resources |
US10148522B2 (en) | 2015-03-09 | 2018-12-04 | Avaya Inc. | Extension of authorization framework |
US11082428B2 (en) * | 2015-03-10 | 2021-08-03 | Wirepath Home Systems, Llc | Systems and methods for cloud-based network control |
AU2016228544B2 (en) * | 2015-03-12 | 2020-01-16 | Visa International Service Association | Mutual authentication of software layers |
CN105187372B (zh) * | 2015-06-09 | 2018-05-18 | 深圳市腾讯计算机系统有限公司 | 一种基于移动应用入口的数据处理方法、装置和系统 |
US10409589B2 (en) * | 2016-07-12 | 2019-09-10 | Accenture Global Solutions Limited | Application centric continuous integration and delivery with automated service assurance |
US11194558B2 (en) | 2016-10-14 | 2021-12-07 | Accenture Global Solutions Limited | Application migration system |
US10873587B2 (en) * | 2017-03-27 | 2020-12-22 | Oracle Systems Corporation | Authenticating access configuration for application programming interfaces |
US20210037007A1 (en) * | 2018-04-06 | 2021-02-04 | Samsung Electronics Co., Ltd. | Method and device for performing onboarding |
TWI725352B (zh) * | 2018-11-05 | 2021-04-21 | 緯創資通股份有限公司 | 驗證及授權的方法及驗證伺服器 |
CN110147261A (zh) * | 2019-04-15 | 2019-08-20 | 平安普惠企业管理有限公司 | 基于调用接口的参数校验方法及相关设备 |
CN110764793A (zh) * | 2019-11-04 | 2020-02-07 | 广州市飞元信息科技有限公司 | 软件工具及其注册、安装、运行的方法、工具管理系统 |
CN110912930B (zh) * | 2019-12-13 | 2021-12-28 | 杭州城市大数据运营有限公司 | 一种数据接口管理方法 |
CN111158794B (zh) * | 2019-12-19 | 2023-03-31 | 苏州浪潮智能科技有限公司 | 一种面向OpenStack的API接口组合优化方法及装置 |
CN112235285B (zh) * | 2020-10-12 | 2023-01-10 | 山东浪潮智慧医疗科技有限公司 | 基于非会话的用户认证模式和服务的方法及系统 |
CN112764751A (zh) * | 2021-01-27 | 2021-05-07 | 深圳市酷开网络科技股份有限公司 | 接口生成方法和装置、接口请求方法和装置及存储介质 |
US20230015697A1 (en) * | 2021-07-13 | 2023-01-19 | Citrix Systems, Inc. | Application programming interface (api) authorization |
CN114979103A (zh) * | 2022-05-19 | 2022-08-30 | 广州数说故事信息科技有限公司 | 开放api集成整合及管理方法及计算机设备 |
CN116401650B (zh) * | 2023-04-14 | 2023-11-14 | 苏州慧睿康智能科技有限公司 | 一种基于行列式的api有限状态安全调用方法 |
CN117390105B (zh) * | 2023-12-11 | 2024-03-01 | 中核武汉核电运行技术股份有限公司 | 一种工业服务开放平台的服务录入方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040225878A1 (en) * | 2003-05-05 | 2004-11-11 | Jose Costa-Requena | System, apparatus, and method for providing generic internet protocol authentication |
US20040243821A1 (en) * | 2002-02-25 | 2004-12-02 | Kim Jong-Won | Method of authenticating an application for personal digital assistant using a unique ID based on a personal computer and system using thereof |
CN1608248A (zh) * | 2002-01-15 | 2005-04-20 | 国际商业机器公司 | 在分布式计算环境中供应聚合服务 |
CN101562621A (zh) * | 2009-05-25 | 2009-10-21 | 阿里巴巴集团控股有限公司 | 一种用户授权的方法、系统和装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2001235765A1 (en) * | 2000-02-23 | 2001-09-03 | Tradesafely.Com Limited | Method and apparatus for internet web site accreditation |
US7415270B2 (en) | 2002-02-15 | 2008-08-19 | Telefonaktiebolaget L M Ericsson (Publ) | Middleware services layer for platform system for mobile terminals |
JP2005352908A (ja) * | 2004-06-11 | 2005-12-22 | Ntt Docomo Inc | 移動通信端末及びデータアクセス制御方法 |
CN101500344B (zh) * | 2008-01-29 | 2011-08-24 | 中兴通讯股份有限公司 | 一种实现企业融合通信的业务平台系统 |
US7966652B2 (en) | 2008-04-07 | 2011-06-21 | Safemashups Inc. | Mashauth: using mashssl for efficient delegated authentication |
US7945774B2 (en) | 2008-04-07 | 2011-05-17 | Safemashups Inc. | Efficient security for mashups |
CN101383845B (zh) * | 2008-10-15 | 2011-12-21 | 北京邮电大学 | 综合业务接入装置、系统及其控制方法 |
CN101969469B (zh) * | 2010-10-25 | 2013-11-06 | 华为技术有限公司 | 电信能力开放中的回调处理方法及装置 |
US9405896B2 (en) * | 2011-04-12 | 2016-08-02 | Salesforce.Com, Inc. | Inter-application management of user credential data |
US8650622B2 (en) * | 2011-07-01 | 2014-02-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and arrangements for authorizing and authentication interworking |
-
2012
- 2012-01-20 CN CN201210018877.4A patent/CN103220259B/zh active Active
-
2013
- 2013-01-21 WO PCT/CN2013/070753 patent/WO2013107403A1/zh active Application Filing
- 2013-01-21 EP EP17187516.4A patent/EP3301881B1/en active Active
- 2013-01-21 EP EP13738680.1A patent/EP2806612B1/en active Active
-
2014
- 2014-07-18 US US14/335,518 patent/US9430302B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1608248A (zh) * | 2002-01-15 | 2005-04-20 | 国际商业机器公司 | 在分布式计算环境中供应聚合服务 |
US20040243821A1 (en) * | 2002-02-25 | 2004-12-02 | Kim Jong-Won | Method of authenticating an application for personal digital assistant using a unique ID based on a personal computer and system using thereof |
US20040225878A1 (en) * | 2003-05-05 | 2004-11-11 | Jose Costa-Requena | System, apparatus, and method for providing generic internet protocol authentication |
CN101562621A (zh) * | 2009-05-25 | 2009-10-21 | 阿里巴巴集团控股有限公司 | 一种用户授权的方法、系统和装置 |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104426719A (zh) * | 2013-09-11 | 2015-03-18 | 方正信息产业控股有限公司 | 基于oauth协议测试的数据传递方法与装置 |
CN104717647A (zh) * | 2013-12-13 | 2015-06-17 | 中国电信股份有限公司 | 业务能力鉴权方法、设备及系统 |
CN104717647B (zh) * | 2013-12-13 | 2019-03-22 | 中国电信股份有限公司 | 业务能力鉴权方法、设备及系统 |
WO2016029595A1 (zh) * | 2014-08-27 | 2016-03-03 | 百度在线网络技术(北京)有限公司 | 开放平台的调用方法、装置、设备及非易失性计算机存储介质 |
CN105681259A (zh) * | 2014-11-20 | 2016-06-15 | 中兴通讯股份有限公司 | 一种开放授权方法、装置及开放平台 |
CN104732331A (zh) * | 2015-02-13 | 2015-06-24 | 腾讯科技(深圳)有限公司 | 分组管理方法、装置和系统 |
US10637676B2 (en) | 2015-02-13 | 2020-04-28 | Tencent Technology (Shenzhen) Company Limited | Method, apparatus, and system for managing follower accounts in groups |
CN105391725A (zh) * | 2015-11-27 | 2016-03-09 | 深圳市摩艾客科技股份有限公司 | 一种真人3d数据读取模块及其数据传输方法 |
CN108259432A (zh) * | 2016-12-29 | 2018-07-06 | 亿阳安全技术有限公司 | 一种api调用的管理方法、设备及系统 |
CN107018128A (zh) * | 2017-03-07 | 2017-08-04 | 西安电子科技大学 | 一种基于多域协同架构第三方应用授权认证方法 |
CN107018128B (zh) * | 2017-03-07 | 2019-12-31 | 西安电子科技大学 | 一种基于多域协同架构第三方应用授权认证方法 |
CN107220274A (zh) * | 2017-04-13 | 2017-09-29 | 江苏曙光信息技术有限公司 | 一种可视化数据接口集市实现方法 |
CN107196943A (zh) * | 2017-05-26 | 2017-09-22 | 浙江大学 | 一种隐私数据在第三方平台的安全展示实现方法 |
CN107835195B (zh) * | 2017-12-04 | 2021-06-15 | 灵动元点信息技术(北京)有限公司 | 一种分布式网络应用节点集成管理方法 |
CN107835195A (zh) * | 2017-12-04 | 2018-03-23 | 灵动元点信息技术(北京)有限公司 | 一种分布式网络应用节点集成管理方法 |
CN108418814A (zh) * | 2018-02-12 | 2018-08-17 | 广州市贝聊信息科技有限公司 | 基于dubbo框架的接口认证方法、装置及计算机可读存储介质 |
CN110704026A (zh) * | 2018-07-10 | 2020-01-17 | 武汉斗鱼网络科技有限公司 | 软件开发工具包的调用方法、装置、终端及可读介质 |
CN110287037A (zh) * | 2019-05-20 | 2019-09-27 | 平安科技(深圳)有限公司 | 分布式的智能api异步回调方法及装置 |
CN110287037B (zh) * | 2019-05-20 | 2023-11-03 | 平安科技(深圳)有限公司 | 分布式的智能api异步回调方法及装置 |
CN111274141A (zh) * | 2020-01-19 | 2020-06-12 | 苏州浪潮智能科技有限公司 | 一种api客户端的测试管理方法及装置 |
CN111274141B (zh) * | 2020-01-19 | 2024-02-09 | 苏州浪潮智能科技有限公司 | 一种api客户端的测试管理方法及装置 |
CN112131022A (zh) * | 2020-09-22 | 2020-12-25 | 深圳力维智联技术有限公司 | 开放api管理方法、装置、系统与计算机可读存储介质 |
CN113435898A (zh) * | 2021-07-09 | 2021-09-24 | 支付宝(杭州)信息技术有限公司 | 数据处理方法以及系统 |
CN115994004A (zh) * | 2023-03-22 | 2023-04-21 | 紫光同芯微电子有限公司 | 一种应用程序接口调用方法及装置 |
CN115994004B (zh) * | 2023-03-22 | 2023-08-29 | 紫光同芯微电子有限公司 | 一种应用程序接口调用方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP2806612A1 (en) | 2014-11-26 |
EP3301881B1 (en) | 2019-04-10 |
CN103220259B (zh) | 2016-06-08 |
EP3301881A1 (en) | 2018-04-04 |
US9430302B2 (en) | 2016-08-30 |
EP2806612B1 (en) | 2017-11-08 |
US20140331240A1 (en) | 2014-11-06 |
EP2806612A4 (en) | 2015-05-13 |
WO2013107403A1 (zh) | 2013-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103220259A (zh) | Oauth API的使用、调用方法、设备及系统 | |
JP4832822B2 (ja) | データ処理システム、方法およびコンピュータ・プログラム(連合ユーザ・ライフサイクル管理用の信頼インフラストラクチャ・サポートを可能にする方法およびシステム) | |
US8386776B2 (en) | Certificate generating/distributing system, certificate generating/distributing method and certificate generating/distributing program | |
JP5567011B2 (ja) | インターネットサービスを提供するための方法およびサービス統合プラットフォームシステム | |
TWI439883B (zh) | 在聯合環境中供識別提供者用之數位權利管理(drm)致能之策略管理 | |
CN104954330B (zh) | 一种对数据资源进行访问的方法、装置和系统 | |
CN102638454A (zh) | 一种面向http身份鉴别协议的插件式单点登录集成方法 | |
US20140006781A1 (en) | Encapsulating the complexity of cryptographic authentication in black-boxes | |
CN102217280B (zh) | 用户业务鉴权方法、系统及服务器 | |
CN101426009A (zh) | 身份管理平台、业务服务器、统一登录系统及方法 | |
CN112468481A (zh) | 一种基于CAS的单页和多页web应用身份集成认证方法 | |
CN103188244A (zh) | 基于开放授权协议实现授权管理的系统及方法 | |
US9553863B2 (en) | Computer implemented method and system for an anonymous communication and computer program thereof | |
CN112565236B (zh) | 信息鉴权方法、装置、计算机设备及存储介质 | |
CN103957189A (zh) | 应用程序之间的交互方法和装置 | |
Al-Sinani et al. | CardSpace-Liberty integration for CardSpace users | |
CN104113511B (zh) | 一种接入ims网络的方法、系统及相关装置 | |
CN113411324B (zh) | 基于cas与第三方服务器实现登录认证的方法和系统 | |
CN111723347B (zh) | 身份认证方法、装置、电子设备及存储介质 | |
JP5632429B2 (ja) | オープンな通信環境にクローズな通信環境を構築するサービス認証方法及びシステム | |
CN108289100B (zh) | 一种安全访问方法、终端设备及系统 | |
KR101259574B1 (ko) | 사용자 및 단말 통합 인증 시스템 및 방법 | |
Al-Sinani et al. | Client-based cardspace-openid interoperation | |
CN110035116A (zh) | 用户关联的方法和装置 | |
Lenz et al. | Enhancing the Modularity and Flexibility of Identity Management Architectures for National and Cross-Border eID Applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |