CN103916395A - 一种服务调用方法、设备及系统 - Google Patents
一种服务调用方法、设备及系统 Download PDFInfo
- Publication number
- CN103916395A CN103916395A CN201410140451.5A CN201410140451A CN103916395A CN 103916395 A CN103916395 A CN 103916395A CN 201410140451 A CN201410140451 A CN 201410140451A CN 103916395 A CN103916395 A CN 103916395A
- Authority
- CN
- China
- Prior art keywords
- inventory
- authorization
- call
- server device
- management platform
- 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
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及数据处理技术领域,尤其涉及一种服务调用方法、设备及系统。该方法包括:调用端设备显示管理平台的可访问服务清单,以供用户从中选择目标服务;调用端设备接收用户选择的目标服务,并通过管理平台向目标服务所属服务端设备发送用于获取目标服务的授权请求;在管理平台接收到服务端设备返回的同意授权请求的信息后,管理平台为调用端设备请求调用的目标服务分配与调用端设备对应的授权码;调用端设备向服务端设备发送用于调用目标服务的调用请求,调用请求中携带有为目标服务分配与调用端设备对应的授权码;服务端设备对调用请求中的授权码进行验证;验证通过后,服务端设备为调用端设备提供目标服务。该方法能够提高服务调用效率。
Description
技术领域
本发明涉及计算机数据处理技术领域,尤其涉及一种服务调用方法、设备及系统。
背景技术
随着对效率的要求进一步提高,为了缩短产品开发时间,人们往往会对已有的功能模块进行重复利用,以避免重复设计,提高开发效率。例如,在计算机、通信等领域,一种产品的中某一程序的功能可能在另一种待开发的产品也需要具备,则可将前一种产品的该程序直接或进行参数调整后用于后一种待开发的产品中。那么,存储有可供外部设备使用的程序的设备,称之为服务端设备;从服务端设备获取程序的设备,称之为调用端设备。调用端设备从服务端设备获取程序的过程也可称为获取服务的过程,或者说服务端设备为调用端设备提供程序的过程,也可称为提供服务的过程。
目前存在的问题是,调用端设备无法获知哪些服务端设备有可用的服务,只有调用端设备的用户和服务端设备的用户之间交流之后才能获知,降低了服务端设备中可用服务的使用效率,不利于提高可用服务的通用性。
发明内容
本发明提供一种服务调用方法、设备及系统,以使得调用端设备高效获知服务端设备中可用的服务,提高服务端设备中可用服务的使用效率。
本发明提出一种服务调用方法,包括:
调用端设备显示管理平台的可访问服务清单,以供用户从中选择目标服务;
所述调用端设备接收所述用户选择的目标服务,并向所述管理平台发送用于获取所述目标服务的授权请求;
所述管理平台向所述目标服务所属服务端设备发送所述授权请求;
在所述管理平台接收到所述服务端设备返回的同意授权请求的信息后,所述管理平台为所述调用端设备请求调用的所述目标服务分配与所述调用端设备对应的授权码;
所述调用端设备向所述服务端设备发送用于调用所述目标服务的调用请求,所述调用请求中携带有为所述目标服务分配与所述调用端设备对应的授权码;
所述服务端设备对所述调用请求中的授权码进行验证;
验证通过后,所述服务端设备为所述调用端设备提供所述目标服务。
本发明还提出一种调用端设备,包括:
服务清单显示单元,用于显示管理平台的可访问服务清单,以供用户从中选择目标服务;
服务接收单元,用于接收所述用户选择的目标服务;
授权请求发送单元,用于向所述管理平台发送用于获取所述目标服务的授权请求;
调用请求发送单元,用于所述服务端设备发送用于调用所述目标服务的调用请求,所述调用请求中携带有为所述目标服务分配与所述调用端设备对应的授权码。
本发明还提出一种服务端设备,包括:
授权请求接收单元,用于从管理平台接收用于获取目标服务的授权请求;
授权请求响应单元,用于向所述管理平台发送同意所述授权请求的信息;
调用请求接收单元,用于接收调用端设备发送的用于调用所述目标服务的调用请求,所述调用请求中携带有为所述目标服务分配与所述调用端设备对应的授权码;
授权码验证单元,用于对所述调用请求中的授权码进行验证;
目标服务提供单元,用于验证通过所述授权码后,为所述调用端设备提供所述目标服务。
本发明还提出一种管理平台,包括:
授权请求接收单元,用于从调用端设备接收用于获取所述目标服务的授权请求;
授权请求转发单元,用于向所述目标服务所属服务端设备发送所述授权请求;
授权码分配单元,用于在接收到所述服务端设备返回的同意授权请求的信息后,为所述调用端设备请求调用的所述目标服务分配与所述调用端设备对应的授权码。
本发明还提出一种服务调用平台,包括本发明任意实施例中提供的调用端设备、服务端设备和管理平台。
本发明提出服务调用方法、设备及系统,调用端设备显示可访问服务清单以供用户从中选择目标服务,提高了调用端设备用户选择目标服务的效率;在所述管理平台接收到所述服务端设备返回的同意授权请求的信息后,所述管理平台为所述调用端设备请求调用的所述目标服务分配与所述调用端设备对应的授权码,使得在服务端同意授权请求时,能够高效建立调用端设备与其需要调用的目标服务的联系,提高调用端设备调用所述目标服务的效率,从而提高了服务端设备中可用服务的使用效率,以及提高可用服务的通用性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,并不构成对本发明的限定。在附图中:
图1是本发明实施例中提供的一种服务调用方法的实现流程图;
图2是本发明实施例中提供的调用端设备的用户在管理平台中申请目标服务的授权的流程示意图;
图3是本发明实施例中提供的调用端设备的用户向服务端设备的用户调用目标服务的流程示意图;
图4是本发明实施例中提供一种调用端设备的结构示意图;
图5是本发明实施例中提供一种服务端设备的结构示意图;
图6是本发明实施例中提供一种管理平台的结构示意图;
图7是本发明实施例中提供的一种服务调用系统的结构示意图;
图8是服务端设备的用户的用例图;
图9是调用端设备的用户的用例图;
图10是用户访问授权管理模块的用例图。
具体实施方式
下面结合附图及具体实施例对本发明进行更加详细与完整的说明。可以理解的是,此处所描述的具体实施例仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
图1是本发明实施例中提供的一种服务调用方法的实现流程图。本发明实施例提供的方法可以由本发明实施例提供的服务调用设备或系统来执行,该装置可以由软件和/或硬件来实现。如图1所示,本发明实施例提供的方法包括:
步骤11、调用端设备显示管理平台的可访问服务清单,以供用户从中选择目标服务。
服务端设备中可供调用端设备使用的程序为可访问服务。可访问服务清单包括可访问服务的相关信息,例如包括可访问服务的功能信息,即可访问服务能够实现的功能介绍和可访问服务所属服务端设备的信息。调用端设备的用户根据自身开发需求和可访问服务清单中各个可访问服务的相关信息能够从可访问服务清单中选择需要访问的目标服务。调用端设备的用户从可访问服务清单中能够有效、准确和快速的选择目标服务,管理平台通过集中化的管理和接入服务,减少了调用端用户寻找所需目标服务的时间成本,避免服务端设备的用户和调用端设备的用户之间无效沟通,例如调用端设备的用户通过人为的沟通后知道某个服务端设备提供的服务可能会提供适合自己的服务,最终沟通完毕后才发现服务端设备提供的服务不满足自己的需求。
所述调用端设备显示管理平台的可访问服务清单之前,还包括:所述调用端设备从所述管理平台中获取所述可访问服务清单。可访问服务清单存储于管理平台中,调用端设备从所述管理平台中获取所述可访问服务清单使得调用端设备的用户能够查询可访问服务清单中的可访问服务,并且从中选择目标服务。
所述调用端设备从所述管理平台中获取所述可访问服务清单之前,还包括:所述服务端设备向所述管理平台发送所述可访问服务;所述管理平台在所述可访问服务清单中添加接收的可访问服务。服务端设备的用户编辑可访问服务并向管理平台发送所述可访问服务,管理平台接收所述可访问服务之后在可访问服务清单中添加所述可访问服务,使得可访问服务清单能够包括服务端设备的用户提供的所有可访问服务,从而提高调用端设备的用户从可访问服务清单中选择目标服务的准确性。调用端设备的用户和服务端设备的用户只需通过可访问服务清单就能够获知哪些服务端设备提供有可用的服务,避免了调用端设备的用户和服务端设备的用户之间直接交流,提高了调用端设备的用户获得目标服务的效率。
所述服务端设备向所述管理平台发送所述可访问服务,还包括编辑可访问服务的状态,例如所述服务端设备已经向所述管理平台发送的某所述可访问服务,由于服务端设备升级或者改造等原因,在某个时段内停止服务,所述服务端设备可向所述管理平台发送修改所述可访问服务状态为不可用的请求,管理平台接受请求,并可以快速,准确的通知所述可访问服务的所有授权访问调用客户端用户,降低了通知成本和遗漏的风险。
所述服务端设备向所述管理平台发送所述可访问服务,还包括授权关系管理,其中当服务端设备根据自身的可承载能力与当时的服务端设备的调用压力情况,可以临时或者永久的终止某个已授权的调用端设备对自己的访问,以应对突发情况,通过策略性的放弃一部分调用端用户,来提高服务端设备的可用性,避免整个服务端设备被拖垮和宕机,并且通过授权关系,服务端设备可以很方便的知道访问请求来自哪个调用端设备,利于快速排查问题,并第一时间停止对有问题的授权码进行服务,提高了服务端设备与服务的安全和质量。
步骤12、所述调用端设备接收所述用户选择的目标服务,并向所述管理平台发送用于获取所述目标服务的授权请求。
调用端设备接收所述用户选择的目标服务之后,向所述管理平台发送所述授权请求,其中所述授权请求用于为调用端设备的用户获取调用目标服务的权限。
步骤13、所述管理平台向所述目标服务所属服务端设备发送所述授权请求。
管理平台向所述目标服务所述服务端设备发送所述授权请求,以备所述服务端设备验证所述授权请求,如果服务端设备的用户同意所述授权请求,则所述调用端设备的用户能够调用所述目标服务,否则,所述调用端设备的用户不能够调用所述目标服务。目标服务所属服务端设备验证所述授权请求能够有效建立调用端设备和目标服务所属服务端设备的联系,从而确保服务端设备和调用端设备信息交互的准确性。
步骤14、在所述管理平台接收到所述服务端设备返回的同意授权请求的信息后,所述管理平台为所述调用端设备请求调用的所述目标服务分配与所述调用端设备对应的授权码。
所述服务端设备的用户对所述授权请求授权之后,通过服务端设备向所述管理平台返回同意授权请求的信息,所述管理平台接收到所述同意授权请求的信息之后,为调用端设备请求调用的目标服务分配与调用端设备对应的授权码。所述管理平台通过授权码建立起调用端设备、目标服务和目标服务所属服务端设备的联系,使得调用端设备的用户具有申请调用目标服务的权限。
管理平台为所述调用端设备请求调用的所述目标服务分配与所述调用端设备对应的授权码之后,还包括:所述管理平台在授权码清单中添加所述授权码,在授权调用端清单中添加调用端信息;所述调用端设备从所述管理平台获取所述授权码清单;所述服务端设备从所述管理平台获取所述授权调用端清单,作为静态授权调用端清单。
一个调用端设备与一个授权码清单一一对应,即一个调用端设备只与唯一的授权码清单对应,一个授权码清单也只对应于一个调用端设备。授权码清单包括与所述授权码清单对应的调用端设备信息、目标服务信息、为调用端设备的用户调用所述目标服务分配的授权码和目标服务所属服务端设备信息。管理平台为所述调用端设备请求调用的所述目标服务分配与所述调用端设备对应的授权码之后,将分配的授权码添加到对应的授权码清单中,使得调用端设备的用户需要调用现有程序时能够从授权码清单中选择相应的可调用服务。一个服务端设备与一个授权调用端清单一一对应,授权调用端清单包括与之对应的服务端设备信息、该服务端设备提供的所述目标服务信息、与所述目标服务对应的授权码以及与目标服务和授权码对应的调用端设备信息。调用端设备获得调用目标服务的授权码之后,在目标服务所述服务端设备对应的授权调用端清单中添加调用端设备信息,使得服务端设备的用户能够根据授权调用端清单的信息获得所有能够调用所述服务端设备提供的目标服务的调用端设备信息。
所述调用端设备从所述管理平台获取与之对应的授权码清单,使得调用端设备的用户根据所述授权码清单获得所述调用端设备能够调用的可访问服务的信息;所述服务端设备从所述管理平台获取与之对应的授权调用端清单,作为静态授权调用端清单,使得服务端设备的用户能够根据静态授权调用端清单获得能够调用所述服务端设备提供的可访问服务的调用端设备信息。
步骤15、所述调用端设备向所述服务端设备发送用于调用所述目标服务的调用请求,所述调用请求中携带有为所述目标服务分配与所述调用端设备对应的授权码。
调用端设备的用户需要调用目标服务时,通过调用端设备向目标服务所属服务端设备发送调用请求,其中所述调用请求用于调用端设备调用所述服务端设备中目标服务。调用请求中包括为目标服务分配与所述调用端设备对应的授权码。
步骤16、所述服务端设备对所述调用请求中的授权码进行验证。
由于授权码与目标服务、调用端设备信息和服务端设备信息具有一一对应关系,即一个授权码只与一个特定调用端设备调用特定服务端设备中的一个目标服务相对应。服务端设备对所述调用请求中的授权码进行验证,能够确保服务端设备、目标服务和调用端设备的关系。
所述服务端设备对所述调用请求中的授权码进行验证包括:所述服务端设备获取所述授权调用端清单,并验证所述授权调用端清单中是否包括与所述授权码对应的调用端设备的信息。与服务端设备对应的授权调用端清单中包括所有所述服务端设备提供的可访问服务以及能够调用所述服务端设备中可访问服务的调用端设备信息,故所述服务端设备获取与之对应的授权调用端清单能够验证所述授权调用端清单中是否包括与所述授权码对应的调用端设备的信息。
所述服务端设备获取所述授权调用端清单包括:所述服务端设备从缓存服务器中获取所述授权调用端清单,若失败,则通过软件开发工具包从所述管理平台中获取所述授权调用端清单,并向缓存服务器发送所述授权调用端清单,以向所述服务端设备返回所述授权调用端清单;若通过所述软件开发工具包不能从所述管理平台中获取所述授权调用端清单,则从所述服务端设备中获取所述静态授权调用端清单。
在验证所述调用请求时,服务端设备优先从缓存服务器中获取所述授权调用端清单,能够提高获得所述授权调用端清单的效率,从而提高服务调用的效率。如果缓存服务器中不存在与所述服务端设备对应的授权调用端清单时,则则通过软件开发工具包从所述管理平台中实时获取所述授权调用端清单,并将所述授权调用端清单存入缓存服务器中,随后向服务端设备发送所述授权调用端清单,能够保证授权调用清单的实时性,有效避免遗漏授权调用端信息。将授权调用端清单存入缓存服务器中,使得在一定时间内,例如5分钟内,服务端设备再次获取授权调用端清单时,能够从缓存服务器中高效获得,提高获得授权调用端清单的效率。如果通过所述软件开发工具包不能从所述管理平台中实时获取所述授权调用端清单,例如管理平台出现故障无法使用,则从所述服务端设备中获取所述静态授权调用端清单。
步骤17、验证通过后,所述服务端设备为所述调用端设备提供所述目标服务。
服务端设备验证通过调用端设备的调用请求后,所述服务端设备为所述调用端设备提供所述目标服务。从而提高目标服务的使用率,降低调用端设备的用户的开发成本。
图2是本发明实施例中提供的调用端设备的用户在管理平台中申请目标服务的授权的流程示意图。如图2所示,调用端设备的用户申请目标服务的授权时主要包括如下步骤:调用端设备的用户通过管理平台发送授权请求;服务端设备的用户审核授权请求;如果服务端设备的用户审核不通过所述授权请求则管理平台向服务端设备和调用端设备发送请求不通过的提醒信息;否则,管理平台为授权请求对应的调用关系分配授权码并分别向服务端设备和调用端设备发送请求通过的提醒信息;调用端设备从管理平台中获取授权码清单。
图3是本发明实施例中提供的调用端设备的用户向服务端设备的用户调用目标服务的流程示意图。如图3所示,调用端设备的用户调用目标服务主要包括:调用端设备向服务端设备发送调用请求,其中,所示调用请求中包括授权码;服务端设备接收所述调用请求,并获取授权调用端清单;服务端设备的用户根据所述授权码和所述授权调用端清单,验证所述调用请求,若验证不通过,则服务端设备的用户拒绝所述调用请求,若验证通过,则调用端设备的用户调用服务端设备中目标服务。其中服务端设备获取授权调用端清单具体包括:服务端设备从缓存服务器中获取授权调用端清单,若没有得到,则通过软件开发工具包从管理平台中实时获取授权调用端清单,并将授权调用端清单中存入缓存服务器中,使得服务端设备从缓存服务器中获取授权调用端清单,若通过软件开发工具包从管理平台中实时获取授权调用端清单,则从服务端设备中获取静态授权服务端清单。综上,本发明提供的服务调用方法能够提高服务调用效率,有效降低沟通和通知成本,并增强服务端设备的安全性。
图4是本发明实施例中提供一种调用端设备的结构示意图。本发明实施例和本发明中方法实施例属于统一构思,用于实现图1所示实施例中的方法。
如图4所示,本发明实施例提供的调用端设备包括:服务清单显示单元41,用于显示管理平台的可访问服务清单,以供用户从中选择目标服务;服务接收单元42,用于接收所述用户选择的目标服务;授权请求发送单元43,用于向所述管理平台发送用于获取所述目标服务的授权请求;调用请求发送单元44,用于所述服务端设备发送用于调用所述目标服务的调用请求,所述调用请求中携带有为所述目标服务分配与所述调用端设备对应的授权码。
所述调用端设备,还包括:服务清单获取单元,用于从所述管理平台中获取所述可访问服务清单;授权码清单获取单元,用于从所述管理平台获取所述授权码清单。
图5是本发明实施例中提供一种服务端设备的结构示意图。本发明实施例和本发明中方法实施例属于统一构思,用于实现图1所示实施例中的方法。
如图5所示,本发明实施例提供的服务端设备包括:授权请求接收单元51,用于从管理平台接收用于获取目标服务的授权请求;授权请求响应单元52,用于向所述管理平台发送同意所述授权请求的信息;调用请求接收单元53,用于接收调用端设备发送的用于调用所述目标服务的调用请求,所述调用请求中携带有为所述目标服务分配与所述调用端设备对应的授权码;授权码验证单元54,用于对所述调用请求中的授权码进行验证;目标服务提供单元55,用于验证通过所述授权码后,为所述调用端设备提供所述目标服务。
所述服务端设备,还包括:可访问服务发送单元,用于向所述管理平台发送所述可访问服务;调用端清单获取单元,用于从所述管理平台获取所述授权调用端清单,作为静态授权调用端清单。
其中,所述授权码验证单元54具体包括:调用端清单获取子单元,用于获取所述授权调用端清单;信息验证子单元,用于验证所述授权调用端清单中是否包括与所述授权码对应的调用端设备的信息。
其中,所述调用端清单获取子单元具体包括:第一子单元,用于从缓存服务器中获取所述授权调用端清单;第二子单元,用于若从缓存服务器中不能够获取所述授权调用端清单,则通过软件开发工具包从所述管理平台中获取所述授权调用端清单,并向缓存服务器发送所述授权调用端清单,以向所述服务端设备返回所述授权调用端清单;第三子单元,用于若通过所述软件开发工具包不能从所述管理平台中获取所述授权调用端清单,则从所述服务端设备中获取所述静态授权调用端清单。
图6是本发明实施例中提供一种管理平台的结构示意图。本发明实施例和本发明中方法实施例属于统一构思,用于实现图1所示实施例中的方法。
如图6所示,本发明实施例提供的管理平台包括:授权请求接收单元61,用于从调用端设备接收用于获取所述目标服务的授权请求;授权请求转发单元62,用于向所述目标服务所属服务端设备发送所述授权请求;授权码分配单元63,用于在接收到所述服务端设备返回的同意授权请求的信息后,为所述调用端设备请求调用的所述目标服务分配与所述调用端设备对应的授权码。
所述管理平台还包括:服务清单发送单元,用于向调用端设备发送可访问服务清单;服务清单编辑单元,用于在所述可访问服务清单中添加接收的可访问服务;清单编辑单元,用于在授权码清单中添加所述授权码,在授权调用端清单中添加调用端信息;授权码清单发送单元,用于向调用端设备发送所述授权码清单;授权调用端清单发送单元,用于向服务端设备发送授权调用端清单,以作为静态授权调用端清单。
本发明实施例还提供一种服务调用系统,其中所述服务调用系统包括本发明任意实施例中介绍的调用端设备、服务端设备和管理平台。
图7是本发明实施例中提供的一种服务调用系统的结构示意图,如图7所示,服务调用系统包括调用端设备、服务端设备和管理平台,其中调用端设备中包括授权码清单,服务端设备中包括软件开发工具包和授权调用端清单。
服务调用系统的功能模块如下:服务端设备管理模块、调用端设备管理模块、访问授权管理模块、消息通知模块、SDK(Software Development Kit,即软件开发工具包)组件、用户管理模块和权限管理模块,其中消息通知模块包括邮件通知模块和短信通知模块。
SDK组件提供给服务端设备使用的API接口(Application ProgrammingInterface,应用程序编程接口),通过调用SDK组件,服务端设备可以实时的获取最新的授权调用端清单,用以判断调用端设备的访问权限,当管理平台P更新了授权关系,本API接口可以同步更新。
调用端设备可以通过管理平台提供的功能,导出一份静态授权码清单,用于访问特定的服务端设备,当管理平台更新了授权关系,静态授权码清单不能自动更新,需要调用端设备重新导出一份最新的授权码清单以便使用。
服务端设备可以通过管理平台提供的功能,导出一份静态的授权调用端清单,用以判断调用端的访问权限,当管理平台更新了授权关系,静态的授权调用端清单不能自动更新,需要服务端重新导出一份最新的授权调用端清单以便使用。
以下忽略用户管理和权限管理、消息通知模块,对管理平台核心的功能模块进行介绍和描述。
服务端管理模块主要是服务端设备对服务进行登记和发布,维护服务,查看服务授权列表,并能在需要通知调用方的时候,方便、及时的通知调用方。调用端设备的用户可以通过查看服务,根据条件搜索服务列表,更快更低成本的找到需要的服务并查阅相关资料。
图8是服务端设备的用户的用例图,如图8所示,服务端设备的用户能够在管理平台中登记服务信息;编辑服务信息;服务状态管理,如发布服务和停止服务;查看服务;根据条件搜索服务端设备列表;查看指定服务端设备授权列表;导出授权调用端清单。用户编辑服务、发布服务或停止服务时通过消息通知模块向与服务相关的调用端设备发送消息通知,使得调用端设备的用户能够针对服务相关信息的修改调整自己的工作。
服务端设备信息包括服务端设备编号、服务端设备域名、可访问服务名称、可访问服务描述、关键字描述、详细资料查看地址、部门名称、联系人姓名、联系人电话、联系人邮箱、服务状态等信息。
调用端管理模块主要是调用端设备的用户在管理平台中进行登记和维护调用端设备信息,通过查看指定调用端设备的授权列表,可以方便的看到相关授权信息。
图9是调用端设备的用户的用例图,如图9所示,调用端设备的用户能够在管理平台中登记调用端设备信息;编辑调用端设备信息;删除调用端设备信息;在调用端设备的用户修改了调用端设备的信息后,例如编辑调用端设备信息和删除调用端设备信息后能够通过消息通知机制将修改信息发送到与调用端设备相关的服务端设备;调用端设备的用户还能够根据条件在调用端设备列表中搜索指定的调用端设备信息;调用端设备的用户能够查看指定调用端设备的可访问授权列表,即查看与指定调用端设备对应的已经获得授权的授权码信息、目标服务信息和目标服务所述服务端设备的信息;调用端设备的用户还能够从管理平台导出与自己唯一对应的授权码清单。
调用端设备信息包括调用端设备编号、调用端设备域名、调用端设备名称、调用端设备描述、关键字描述、部门名称、联系人姓名、联系人电话、联系人邮箱等信息。
访问授权管理模块主要是申请和审核授权申请,服务端设备可以根据调用端设备发起的申请和已经授权的其他所有调用端设备提供的预估访问量数据,提前进行服务器的扩容以适应访问量的增加。
审核通过后,每个调用端设备都会获得一个唯一的授权码,通过此授权码来访问服务端设备提供的服务。授权码由管理平台生成并进行验证。
图10是用户访问授权管理模块的用例图,如图10所示,用户通过访问授权管理模块能够查看授权关系、授权关系续期、授权关系到期提醒、授权申请、授权审核、授权终止、编辑授权关系,在用户修改或申请授权关系时均需要采用消息通知机制发送相关信息。
授权关系的信息包括:授权关系编号、服务编号、调用端设备编号、关系状态、授权码、有效日期、调用端设备域名、调用端设备IP地址列表、调用端设备日访问量、调用端设备每小时平均请求次数、调用端峰值每小时请求次数。
消息通知模块主要用于服务端设备更新服务、审核授权、停止服务等会影响调用端设备或者需要及时通知相关调用端设备的时候,可以通过管理平台准确的找到调用端设备,并及时方便的进行通知。
本发明通过管理平台这一统一的服务发布和查询平台,解决了调用端设备寻找合适的可访问服务的沟通成本高和无效沟通成本以及重复发明轮子的问题,让研发团队可以在管理平台上方便的搜索和查看所有的可访问服务并查阅相关资料。通过授权关系管理,保存了所有服务端设备和调用端设备的关系管理,
可以正向和反向进行方便的查找和定位,通过消息通知模块,服务端设备可以方便的管理和通知所有的调用端设备,很快定位到调用端设备,解决通知成本高和问题排查难的问题。
本发明是针对IT企业内部研发人员之间调用可访问服务成本高这一特定问题领域的解决方案,是多种业务功能的创新与组合,本专利的解决方案是一种高性能,低风险的授权码管理和验证方案。
本发明包含了如下功能:可访问服务登记、发布、管理;调用端设备登记、管理;授权关系管理;授权审核、管理;消息推送和消息管理。本实施例通过SDK实时获取授权调用端清单、管理平台提前导出静态授权调用端清单,在不同的情况下分别使用授权调用端清单和静态授权调用端清单对调用请求进行验证授权,即保证了调用请求验证的实时性,又避免了SDK不可用的风险,通过使用缓存服务器缓存授权码清单,避免了频繁调用SDK,提高了服务性能。
通过消息推送,可以保证授权码清单变更新后,可以及时通过服务端设备和调用端设备,以便他们及时导出最新的授权码清单和静态授权调用端清单。本系统还可以通过授权码结合调用端设备IP地址这2个指标来进行调用请求的验证,调用端设备向服务端设备发送用于调用所述目标服务的调用请求之前,调用端设备的用户能够设置是否发送调用端的IP地址,保证了授权码泄露后,服务端设备能够对调用端设备IP验证,以拒绝非法调用端设备的请求。
本实施例提供的服务调用系统用于执行本发明任意实施例提供的服务调用方法,具备相应的功能模块,达到相同的技术效果。
上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种服务调用方法,其特征在于,包括:
调用端设备显示管理平台的可访问服务清单,以供用户从中选择目标服务;
所述调用端设备接收所述用户选择的目标服务,并向所述管理平台发送用于获取所述目标服务的授权请求;
所述管理平台向所述目标服务所属服务端设备发送所述授权请求;
在所述管理平台接收到所述服务端设备返回的同意授权请求的信息后,所述管理平台为所述调用端设备请求调用的所述目标服务分配与所述调用端设备对应的授权码;
所述调用端设备向所述服务端设备发送用于调用所述目标服务的调用请求,所述调用请求中携带有为所述目标服务分配与所述调用端设备对应的授权码;
所述服务端设备对所述调用请求中的授权码进行验证;
验证通过后,所述服务端设备为所述调用端设备提供所述目标服务。
2.根据权利要求1所述的方法,其特征在于,所述调用端设备显示管理平台的可访问服务清单之前,还包括:
所述调用端设备从所述管理平台中获取所述可访问服务清单。
3.根据权利要求2所述的方法,其特征在于,所述调用端设备从所述管理平台中获取所述可访问服务清单之前,还包括:
所述服务端设备向所述管理平台发送所述可访问服务;
所述管理平台在所述可访问服务清单中添加接收的可访问服务。
4.根据权利要求1所述的方法,其特征在于,所述管理平台为所述调用端设备请求调用的所述目标服务分配与所述调用端设备对应的授权码之后,还包括:
所述管理平台在授权码清单中添加所述授权码,在授权调用端清单中添加调用端信息;
所述调用端设备从所述管理平台获取所述授权码清单;
所述服务端设备从所述管理平台获取所述授权调用端清单,作为静态授权调用端清单。
5.根据权利要求1所述的方法,其特征在于,所述服务端设备对所述调用请求中的授权码进行验证包括:
所述服务端设备获取所述授权调用端清单,并验证所述授权调用端清单中是否包括与所述授权码对应的调用端设备的信息。
6.根据权利要求5所述的方法,其特征在于,所述服务端设备获取所述授权调用端清单包括:
所述服务端设备从缓存服务器中获取所述授权调用端清单,若失败,则通过软件开发工具包从所述管理平台中获取所述授权调用端清单,并向缓存服务器发送所述授权调用端清单,以向所述服务端设备返回所述授权调用端清单;
若通过所述软件开发工具包不能从所述管理平台中获取所述授权调用端清单,则从所述服务端设备中获取所述静态授权调用端清单。
7.一种调用端设备,其特征在于,包括:
服务清单显示单元,用于显示管理平台的可访问服务清单,以供用户从中选择目标服务;
服务接收单元,用于接收所述用户选择的目标服务;
授权请求发送单元,用于向所述管理平台发送用于获取所述目标服务的授权请求;
调用请求发送单元,用于所述服务端设备发送用于调用所述目标服务的调用请求,所述调用请求中携带有为所述目标服务分配与所述调用端设备对应的授权码。
8.根据权利要求7所述的调用端设备,其特征在于,还包括:
服务清单获取单元,用于从所述管理平台中获取所述可访问服务清单;
授权码清单获取单元,用于从所述管理平台获取所述授权码清单。
9.一种服务端设备,其特征在于,包括:
授权请求接收单元,用于从管理平台接收用于获取目标服务的授权请求;
授权请求响应单元,用于向所述管理平台发送同意所述授权请求的信息;
调用请求接收单元,用于接收调用端设备发送的用于调用所述目标服务的调用请求,所述调用请求中携带有为所述目标服务分配与所述调用端设备对应的授权码;
授权码验证单元,用于对所述调用请求中的授权码进行验证;
目标服务提供单元,用于验证通过所述授权码后,为所述调用端设备提供所述目标服务。
10.根据权利要求9所述的服务端,其特征在于,还包括:
可访问服务发送单元,用于向所述管理平台发送所述可访问服务;
调用端清单获取单元,用于从所述管理平台获取所述授权调用端清单,作为静态授权调用端清单。
11.根据权利要求10所述的服务端设备,其特征在于,所述授权码验证单元具体包括:
调用端清单获取子单元,用于获取所述授权调用端清单;
信息验证子单元,用于验证所述授权调用端清单中是否包括与所述授权码对应的调用端设备的信息。
12.根据权利要求11所述的服务端设备,其特征在于,所述调用端清单获取子单元具体包括:
第一子单元,用于从缓存服务器中获取所述授权调用端清单;
第二子单元,用于若从缓存服务器中不能够获取所述授权调用端清单,则通过软件开发工具包从所述管理平台中获取所述授权调用端清单,并向缓存服务器发送所述授权调用端清单,以向所述服务端设备返回所述授权调用端清单;
第三子单元,用于若通过所述软件开发工具包不能从所述管理平台中获取所述授权调用端清单,则从所述服务端设备中获取所述静态授权调用端清单。
13.一种管理平台,其特征在于,包括:
授权请求接收单元,用于从调用端设备接收用于获取所述目标服务的授权请求;
授权请求转发单元,用于向所述目标服务所属服务端设备发送所述授权请求;
授权码分配单元,用于在接收到所述服务端设备返回的同意授权请求的信息后,为所述调用端设备请求调用的所述目标服务分配与所述调用端设备对应的授权码。
14.根据权利要求13所述的管理平台,其特征在于,还包括:
服务清单发送单元,用于向调用端设备发送可访问服务清单;
服务清单编辑单元,用于在所述可访问服务清单中添加接收的可访问服务;
清单编辑单元,用于在授权码清单中添加所述授权码,在授权调用端清单中添加调用端信息;
授权码清单发送单元,用于向调用端设备发送所述授权码清单;
授权调用端清单发送单元,用于向服务端设备发送授权调用端清单,以作为静态授权调用端清单。
15.一种服务调用系统,其特征在于,包括如权利要求7-8任一项所述的调用端设备、如权利要求9-12任一项所述的服务端设备和如权利要求13-14任一项所述的管理平台。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410140451.5A CN103916395B (zh) | 2014-04-09 | 2014-04-09 | 一种服务调用方法、设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410140451.5A CN103916395B (zh) | 2014-04-09 | 2014-04-09 | 一种服务调用方法、设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103916395A true CN103916395A (zh) | 2014-07-09 |
CN103916395B CN103916395B (zh) | 2017-04-19 |
Family
ID=51041802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410140451.5A Active CN103916395B (zh) | 2014-04-09 | 2014-04-09 | 一种服务调用方法、设备及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103916395B (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106020998A (zh) * | 2016-05-24 | 2016-10-12 | 深圳市智物联网络有限公司 | 服务调用方法及装置 |
CN106230878A (zh) * | 2016-06-30 | 2016-12-14 | 宁波翼动通讯科技有限公司 | 一种基于AllJoyn框架的设备服务调用方法及装置 |
CN106357799A (zh) * | 2016-10-20 | 2017-01-25 | 杭州东方通信软件技术有限公司 | 服务总线中间件系统及其调用方法 |
CN106528056A (zh) * | 2015-09-09 | 2017-03-22 | 阿里巴巴集团控股有限公司 | 一种对系统功能的管控方法和装置 |
CN106709280A (zh) * | 2016-12-08 | 2017-05-24 | 北京旷视科技有限公司 | 信息处理方法和用于信息处理的客户端、服务器端 |
CN108366132A (zh) * | 2018-03-13 | 2018-08-03 | 平安普惠企业管理有限公司 | 服务器间的服务管理方法、装置、计算机设备和存储介质 |
CN109117605A (zh) * | 2018-07-25 | 2019-01-01 | 北京市商汤科技开发有限公司 | 一种鉴权方法及其装置、设备和存储介质 |
WO2019062235A1 (zh) * | 2017-09-28 | 2019-04-04 | 华为技术有限公司 | 用于调用网络功能服务的方法、装置和系统 |
CN109981562A (zh) * | 2019-01-17 | 2019-07-05 | 平安科技(深圳)有限公司 | 一种软件开发工具包授权方法及装置 |
WO2019227320A1 (zh) * | 2018-05-30 | 2019-12-05 | 深圳市元征科技股份有限公司 | 维修设备管理方法、服务器和计算机可读存储介质 |
CN110636057A (zh) * | 2019-09-10 | 2019-12-31 | 腾讯科技(深圳)有限公司 | 一种应用访问方法、装置和计算机可读存储介质 |
CN110874455A (zh) * | 2018-08-31 | 2020-03-10 | 阿里巴巴集团控股有限公司 | 授权管理方法和系统 |
CN112309139A (zh) * | 2020-10-26 | 2021-02-02 | 西安艾润物联网技术服务有限责任公司 | 车辆管理场景中服务功能的自助开通实现方法及装置 |
CN109117198B (zh) * | 2017-06-23 | 2021-05-11 | 中国软件与技术服务股份有限公司 | 一种基于成本评估的超高速并行自调优的服务调用方法 |
CN112882924A (zh) * | 2021-01-21 | 2021-06-01 | 平安银行股份有限公司 | 基于注册中心的测试环境搭建方法、装置、设备及介质 |
CN113010203A (zh) * | 2019-12-20 | 2021-06-22 | Oppo广东移动通信有限公司 | 一种基于开放平台的应用优化方法及相关装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145982A (zh) * | 2007-10-29 | 2008-03-19 | 广州复旦奥特科技股份有限公司 | 一种基于对象模型与协议组态配置的通用网关设计方法 |
CN101385033A (zh) * | 2006-02-23 | 2009-03-11 | 高通股份有限公司 | 可信代码群组 |
CN101882092A (zh) * | 2010-05-11 | 2010-11-10 | 中兴通讯股份有限公司 | 一种应用程序的管理方法及装置 |
US20120102483A1 (en) * | 2010-10-22 | 2012-04-26 | Adobe Systems Incorporated | Handling calls to native code in a managed code environment |
CN102819431A (zh) * | 2012-07-10 | 2012-12-12 | 上海华勤通讯技术有限公司 | 逻辑指令的设置方法、应用程序的调用方法及移动终端 |
CN102932549A (zh) * | 2012-11-05 | 2013-02-13 | 广东欧珀移动通信有限公司 | 通过耳机快速进入应用程序的移动终端及方法 |
CN103020259A (zh) * | 2012-12-21 | 2013-04-03 | 中国农业银行股份有限公司 | 一种获取软件程序的方法及系统 |
CN103425910A (zh) * | 2013-07-31 | 2013-12-04 | 福建天晴数码有限公司 | 程序中函数是否被非法调用的检测方法 |
-
2014
- 2014-04-09 CN CN201410140451.5A patent/CN103916395B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101385033A (zh) * | 2006-02-23 | 2009-03-11 | 高通股份有限公司 | 可信代码群组 |
CN101145982A (zh) * | 2007-10-29 | 2008-03-19 | 广州复旦奥特科技股份有限公司 | 一种基于对象模型与协议组态配置的通用网关设计方法 |
CN101882092A (zh) * | 2010-05-11 | 2010-11-10 | 中兴通讯股份有限公司 | 一种应用程序的管理方法及装置 |
US20120102483A1 (en) * | 2010-10-22 | 2012-04-26 | Adobe Systems Incorporated | Handling calls to native code in a managed code environment |
CN102819431A (zh) * | 2012-07-10 | 2012-12-12 | 上海华勤通讯技术有限公司 | 逻辑指令的设置方法、应用程序的调用方法及移动终端 |
CN102932549A (zh) * | 2012-11-05 | 2013-02-13 | 广东欧珀移动通信有限公司 | 通过耳机快速进入应用程序的移动终端及方法 |
CN103020259A (zh) * | 2012-12-21 | 2013-04-03 | 中国农业银行股份有限公司 | 一种获取软件程序的方法及系统 |
CN103425910A (zh) * | 2013-07-31 | 2013-12-04 | 福建天晴数码有限公司 | 程序中函数是否被非法调用的检测方法 |
Non-Patent Citations (1)
Title |
---|
闫梅: "基于Android安全机制的权限检测系统", 《计算机工程与设计》 * |
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528056A (zh) * | 2015-09-09 | 2017-03-22 | 阿里巴巴集团控股有限公司 | 一种对系统功能的管控方法和装置 |
CN106020998A (zh) * | 2016-05-24 | 2016-10-12 | 深圳市智物联网络有限公司 | 服务调用方法及装置 |
CN106230878A (zh) * | 2016-06-30 | 2016-12-14 | 宁波翼动通讯科技有限公司 | 一种基于AllJoyn框架的设备服务调用方法及装置 |
CN106230878B (zh) * | 2016-06-30 | 2020-02-14 | 宁波翼动通讯科技有限公司 | 一种基于AllJoyn框架的设备服务调用方法及装置 |
CN106357799A (zh) * | 2016-10-20 | 2017-01-25 | 杭州东方通信软件技术有限公司 | 服务总线中间件系统及其调用方法 |
CN106357799B (zh) * | 2016-10-20 | 2020-03-27 | 杭州东方通信软件技术有限公司 | 服务总线中间件系统及其调用方法 |
CN106709280A (zh) * | 2016-12-08 | 2017-05-24 | 北京旷视科技有限公司 | 信息处理方法和用于信息处理的客户端、服务器端 |
CN109117198B (zh) * | 2017-06-23 | 2021-05-11 | 中国软件与技术服务股份有限公司 | 一种基于成本评估的超高速并行自调优的服务调用方法 |
WO2019062235A1 (zh) * | 2017-09-28 | 2019-04-04 | 华为技术有限公司 | 用于调用网络功能服务的方法、装置和系统 |
CN109587187A (zh) * | 2017-09-28 | 2019-04-05 | 华为技术有限公司 | 用于调用网络功能服务的方法、装置和系统 |
US11956361B2 (en) | 2017-09-28 | 2024-04-09 | Huawei Technologies Co., Ltd. | Network function service invocation method, apparatus, and system |
US11218314B2 (en) | 2017-09-28 | 2022-01-04 | Huawei Technologies Co., Ltd. | Network function service invocation method, apparatus, and system |
CN108366132A (zh) * | 2018-03-13 | 2018-08-03 | 平安普惠企业管理有限公司 | 服务器间的服务管理方法、装置、计算机设备和存储介质 |
WO2019227320A1 (zh) * | 2018-05-30 | 2019-12-05 | 深圳市元征科技股份有限公司 | 维修设备管理方法、服务器和计算机可读存储介质 |
CN111373714A (zh) * | 2018-05-30 | 2020-07-03 | 深圳市元征科技股份有限公司 | 维修设备管理方法、服务器和计算机可读存储介质 |
EP3609153A4 (en) * | 2018-05-30 | 2020-04-22 | Launch Tech Co., Ltd | MAINTENANCE EQUIPMENT MANAGEMENT METHOD, SERVER AND COMPUTER READABLE INFORMATION MEDIUM |
CN109117605A (zh) * | 2018-07-25 | 2019-01-01 | 北京市商汤科技开发有限公司 | 一种鉴权方法及其装置、设备和存储介质 |
CN109117605B (zh) * | 2018-07-25 | 2021-02-02 | 北京市商汤科技开发有限公司 | 一种鉴权方法及其装置、设备和存储介质 |
CN110874455A (zh) * | 2018-08-31 | 2020-03-10 | 阿里巴巴集团控股有限公司 | 授权管理方法和系统 |
CN109981562B (zh) * | 2019-01-17 | 2023-05-12 | 平安科技(深圳)有限公司 | 一种软件开发工具包授权方法及装置 |
CN109981562A (zh) * | 2019-01-17 | 2019-07-05 | 平安科技(深圳)有限公司 | 一种软件开发工具包授权方法及装置 |
CN110636057B (zh) * | 2019-09-10 | 2021-09-28 | 腾讯科技(深圳)有限公司 | 一种应用访问方法、装置和计算机可读存储介质 |
CN110636057A (zh) * | 2019-09-10 | 2019-12-31 | 腾讯科技(深圳)有限公司 | 一种应用访问方法、装置和计算机可读存储介质 |
CN113010203A (zh) * | 2019-12-20 | 2021-06-22 | Oppo广东移动通信有限公司 | 一种基于开放平台的应用优化方法及相关装置 |
CN112309139A (zh) * | 2020-10-26 | 2021-02-02 | 西安艾润物联网技术服务有限责任公司 | 车辆管理场景中服务功能的自助开通实现方法及装置 |
CN112882924A (zh) * | 2021-01-21 | 2021-06-01 | 平安银行股份有限公司 | 基于注册中心的测试环境搭建方法、装置、设备及介质 |
CN112882924B (zh) * | 2021-01-21 | 2022-02-08 | 平安银行股份有限公司 | 基于注册中心的测试环境搭建方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103916395B (zh) | 2017-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103916395A (zh) | 一种服务调用方法、设备及系统 | |
US11272036B2 (en) | API hybrid multi-tenant routing method and system, and API gateway | |
JP7222036B2 (ja) | モデルトレーニングシステムおよび方法および記憶媒体 | |
EP3843364A1 (en) | Method, device, and apparatus for processing cloud service in cloud system | |
US9197639B2 (en) | Method for sharing data of device in M2M communication and system therefor | |
CN103944883A (zh) | 一种云计算环境下云应用访问控制的系统及方法 | |
CN102498703A (zh) | 应用服务器相关的用户数据的管理 | |
CN112449343B (zh) | 用户身份标识管理的方法、设备及系统 | |
CN111917895B (zh) | 一种别名管理方法及设备 | |
US20060095958A1 (en) | Distributed data consolidation network | |
US20150332026A1 (en) | Reusable license activation key | |
US10749867B1 (en) | Systems and methods for device detection and registration | |
CN103973665A (zh) | 认证与授权的方法及系统 | |
CN105225072A (zh) | 一种多应用系统的访问管理方法及系统 | |
KR101714499B1 (ko) | 경호원 자동 배치 방법 | |
CN103533094A (zh) | 标码一体机及标码系统 | |
EP3396615A1 (en) | Management of end user privacy controls | |
CN110401665B (zh) | 统一入口的微信鉴权api接口实现方法 | |
CN114282132A (zh) | 一种基于云平台的终端管控系统 | |
CN107145606A (zh) | 一种数据管理方法及装置 | |
CN109951473B (zh) | 功能触发方法、系统、电子设备和计算机可读存储介质 | |
KR102086088B1 (ko) | 접속점 이름을 변경하는 단말 장치, 디바이스 매니저 어플리케이션 및 서비스 어플리케이션 | |
US11403685B2 (en) | Automatic distribution of licenses for a third-party service operating in association with a licensed first-party service | |
CN104954347A (zh) | M2m应用服务方法、装置及系统 | |
CN111935702B (zh) | 处理业务的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |