一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

服务接口安全调用方法、装置、设备和存储介质与流程

2022-12-20 20:35:29 来源:中国专利 TAG:


1.本发明涉及信息安全领域,尤其涉及一种服务接口安全调用方法、服务接口安全调用装置、电子设备和非暂态计算机可读存储介质。


背景技术:

[0002]“网络服务”,是指一些在网络上运行的、面向服务的、基于分布式程序的软件模块。网络服务通常是许多应用程序接口(application programming interface,简称api)来提供。常用服务接口,即api的调用方法,为了保证接口访问的安全性,通常是为接口的合法用户配置用户名和密码。然而这种保证接口访问安全性的方式安全性较低,容易使接口受到攻击。


技术实现要素:

[0003]
本发明提供一种服务接口安全调用方法、装置、设备和存储介质,用以解决现有技术中服务接口访问的安全性较低,服务接口容易受到攻击的缺陷,实现保证服务接口访问的安全性,有效避免服务接口受到攻击。
[0004]
第一方面,本发明提供一种服务接口安全调用方法,应用于服务提供方,在所述服务提供方与服务调用方之间建立加密信道,对服务接口的安全调用是在所述加密信道中进行,所述服务接口安全调用方法包括:
[0005]
接收服务调用方发出的服务接口调用请求;
[0006]
根据所述服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求;
[0007]
向所述服务调用方发送所述身份验证请求,并接收所述服务调用方根据所述身份验证请求发出的身份证明;
[0008]
对所述身份证明进行验证,并根据验证结果向所述服务调用方返回服务接口调用的结果。
[0009]
根据本发明提供的一种服务接口安全调用方法,根据所述服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求,包括:
[0010]
根据所述服务接口调用请求确定身份验证的策略;所述身份验证的策略包括:所述目标数字身份中的至少一项身份属性和对所述至少一项身份属性进行身份证明的方式;
[0011]
根据所述身份验证的策略生成所述身份验证请求;
[0012]
对所述身份证明进行验证,包括:
[0013]
根据所确定的身份证明的方式对所述身份证明进行验证,得到所述验证结果。
[0014]
根据本发明提供的一种服务接口安全调用方法,对所述身份证明进行验证,并根据验证结果向所述服务调用方返回服务接口调用的结果,包括:
[0015]
判断身份证明是否有效;
[0016]
若身份证明有效,基于所述目标数字身份的至少一项身份属性,根据服务接口调
用请求携带的服务接口信息,调用对应版本的服务接口提供服务,得到服务接口调用的结果;
[0017]
向所述服务调用方返回所述服务接口调用的结果;
[0018]
若身份证明无效,向所述服务调用方返回所述服务接口调用失败的信息。
[0019]
根据本发明提供的一种服务接口安全调用方法,根据所述服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求之前,还包括:
[0020]
判断身份验证提议中服务接口调用请求携带的服务接口信息是否具有合法性;
[0021]
若服务接口调用请求携带的服务接口信息具有合法性,根据所述服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求;
[0022]
若服务接口调用请求携带的服务接口信息不具有合法性,向所述服务调用方返回所述服务接口调用失败的信息。
[0023]
第二方面,本发明提供一种服务接口安全调用方法,应用于服务调用方,在所述服务调用方与服务提供方之间建立加密信道,对服务接口的安全调用是在所述加密信道中进行,所述服务接口安全调用方法包括:
[0024]
向服务提供方发送服务接口调用请求;
[0025]
接收所述服务提供方根据所述服务接口调用请求发出的针对目标数字身份中至少一项身份属性的身份验证请求;
[0026]
根据所述身份验证请求生成身份证明,并向所述服务提供方发送所述身份证明;
[0027]
接收所述服务提供方根据所述身份证明的验证结果返回的服务接口调用的结果。
[0028]
第三方面,本发明还提供一种服务接口安全调用装置,应用于服务提供方,在所述服务提供方与服务调用方之间建立加密信道,对服务接口的安全调用是在所述加密信道中进行,所述服务接口安全调用装置包括:
[0029]
第一通信模块,用于接收服务调用方发出的服务接口调用请求;
[0030]
第一处理模块,用于根据所述服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求;
[0031]
所述第一通信模块,还用于向所述服务调用方发送所述身份验证请求,并接收所述服务调用方根据所述身份验证请求生成的身份证明;
[0032]
所述第一处理模块,还用于对所述身份证明进行验证;
[0033]
所述第一通信模块,还用于根据验证结果向所述服务调用方返回服务接口调用的结果。
[0034]
第四方面,本发明还提供一种服务接口安全调用装置,应用于服务调用方,在所述服务调用方与服务提供方之间建立加密信道,对服务接口的安全调用是在所述加密信道中进行,所述服务接口安全调用装置包括:
[0035]
第二通信模块,用于向服务提供方发送服务接口调用请求;接收所述服务提供方根据所述服务接口调用请求发出的针对目标数字身份中至少一项身份属性的身份验证请求;
[0036]
第二处理模块,用于根据所述身份验证请求生成身份证明;
[0037]
所述第二通信模块,还用于向所述服务提供方发送所述身份证明;接收所述服务提供方根据所述身份证明的验证结果返回的服务接口调用的结果。
[0038]
第五方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述第一方面任一种所述服务接口安全调用方法的步骤,或者实现如上述第二方面任一种所述服务接口安全调用方法的步骤。
[0039]
第六方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述第一方面任一种所述服务接口安全调用方法的步骤,或者实现如上述第二方面任一种所述服务接口安全调用方法的步骤。
[0040]
本发明提供的服务接口安全调用方法、装置、设备和存储介质,通过在服务提供方与服务调用方之间建立加密信道,在加密信道中进行对服务接口的安全调用,通过接收服务调用方发出的服务接口调用请求,根据服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求,向服务调用方发送身份验证请求,并接收服务调用方根据身份验证请求发出的身份证明,对身份证明进行验证,并根据验证结果向服务调用方返回服务接口调用的结果;利用服务调用方所持有的数字身份中的至少一项身份属性,通过服务调用方向服务提供方证明自己拥有数字身份的签发方所签发的数字身份,使服务调用方取得服务提供方对于自己的信任,从而访问对应的服务接口,可以保证服务接口访问的安全性,有效避免服务接口受到攻击。
附图说明
[0041]
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0042]
图1是本发明提供的一种服务接口安全调用方法的流程示意图;
[0043]
图2是本发明提供的一种数字身份系统的结构示意图;
[0044]
图3是图1中提供的服务接口安全调用方法的一些实施例的流程示意图;
[0045]
图4是本发明提供的另一种服务接口安全调用方法的流程示意图;
[0046]
图5是本发明提供的服务接口安全调用方法的一种应用场景的流程示意图;
[0047]
图6是本发明提供的一种服务接口安全调用装置的结构示意图;
[0048]
图7是本发明提供的另一种服务接口安全调用装置的结构示意图;
[0049]
图8是本发明提供的电子设备的结构示意图。
具体实施方式
[0050]
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0051]
下面结合图1-图5描述本发明的服务接口安全调用方法。
[0052]
请参阅图1,图1是本发明提供的一种服务接口安全调用方法的流程示意图,图1所示的服务接口安全调用方法,应用于服务提供方,可以由服务接口安全调用装置执行,在服
务提供方与服务调用方之间建立加密信道,例如,通过安全套接字协议(secure sockets layer,简称ssl)、传输层安全性协议(transport layer security,简称tls)或者超文本传输安全协议(hyper text transfer protocol over securesocket layer,简称https)等建立加密信道,本发明实施例对实现加密信道的协议类型不作限定,通过加密信道服务调用方和服务提供方可以进行公钥的交换,对服务接口的安全调用是在加密信道中进行,如图1所示,该服务接口安全调用方法至少包括:
[0053]
101,接收服务调用方发出的服务接口调用请求。
[0054]
在本发明实施例中,服务调用方向服务提供方发出的服务接口调用请求可以携带被调用的服务接口信息,例如,服务接口的名称、服务接口的参数名称和数值等,本发明实施例对服务接口调用请求携带的服务接口信息的内容不作限定,服务提供方可以根据接收到的服务接口调用请求携带的服务接口信息,调用对应的服务接口提供服务。可选地,服务调用方可以将服务接口调用请求整合于身份验证提议中,向服务提供方发出整合后的身份验证提议,服务提供方可以接收整合后的身份验证提议,从中获取服务接口调用请求。
[0055]
102,根据服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求。
[0056]
在本发明实施例中,数字身份是一种数字化加密的身份证明,如图2所示,数字身份具有以下特点:
[0057]
(1)每个数字身份都具有签发方和持有方,其中,签发方是数字身份的赋予者,是数字身份的来源,持有方是数字身份描述的对象,是数字身份的所有者,数字身份代表的是签发方对持有方的特定的信任;
[0058]
(2)每个数字身份都符合某一数字身份规范,每个数字身份规范都具有唯一的标识,数字身份规范的标识是规范制定方在信任中介对数字身份规范进行注册获得,其所有权属于规范制定方;
[0059]
(3)每个数字身份规范可以包含多种不同的数据格式,每个数字身份必须符合某一特定的数据格式,因此也必定属于该数据格式所属的数据规范;数字身份的数据格式用来描述数字身份的持有人的相关信息,例如,姓名、安全级别等,对于不同的应用场景可以采用一种或多种不同数据格式的数字身份;每个数据格式都具有唯一的标识,每个数据格式的标识是所属的数据规范的制定方在信任中介对数据格式进行注册获得,每个数字身份的内容必须引用所采用的数据格式的标识;
[0060]
(4)每个数字身份都具有对应的数据源;数据源是由数字身份的签发方和数据格式两方面信息组成的二元组,每个数据源都具有唯一的标识,每个数据源的标识是数字身份的签发方在生成数字身份前在信任中介对数据源进行注册获得,每个数字身份的内容必须引用所采用的数据源的标识;
[0061]
(5)信任中介可以是专门提供信任服务的组织,也可以是区块链这种的公共基础设施;
[0062]
(6)签发方在签发数字身份后,可以通过各种通信方式将所签发的数字身份发送给持有方,持有方对从签发方获得的数字身份进行存储;
[0063]
(7)数字身份的持有方可以同时持有来自多个数据源的多个数字身份,每个数字身份可以服务于不同的目的;
[0064]
(8)数字身份用于持有方向验证方证明自己拥有签发方赋予的特定的信任,验证方可以基于对签发方的信任来选择信任数字身份的持有方;
[0065]
(9)数字身份的验证方和签发方可以是同一方。
[0066]
在本发明实施例中,服务调用方是数字身份的持有方,服务调用方可以在调用服务接口之前,获取了访问服务接口所需的所有数字身份。服务提供方是数字身份的验证方,也可以是数字身份的签发方,或者数字身份的签发方可以是除服务提供方和服务调用方以外的第三方,服务提供方对数字身份的签发方签发的数字身份存在执行服务接口调用所需的信任。
[0067]
在本发明实施例中,服务提供方在接收到服务调用方发出的服务接口调用请求后,可以根据服务接口调用请求获得服务接口调用的上下文信息,例如,服务接口的名称、服务调用方的姓名、服务接口调用的时间等,根据服务接口调用的上下文信息,生成针对服务调用方的目标数字身份中至少一项身份属性的身份验证请求。可选地,目标数字身份可以包括以下中的一种:符合特定数字身份规范的数字身份、符合特定数据格式的数字身份、来自特定签发方的数字身份和来自特定数据源的数字身份;目标数字身份中的至少一项身份属性可以根据目标数字身份的内容确定,例如,姓名、地址等身份属性;本发明实施例对目标数字身份的类型和目标数字身份中至少一项身份属性的类型不作限定。
[0068]
可选地,所生成的生成身份验证请求,可以是针对服务调用方一个目标数字身份中一项身份属性的身份验证请求;或者,也可以是针对服务调用方一个目标数字身份中多项身份属性的身份验证请求;或者,还可以是针对服务调用方多个目标数字身份中多项身份属性的身份验证请求;本发明实施例对此不作限定。
[0069]
在本发明实施例中,服务提供方在每一次服务接口被调用时,可根据服务接口调用的上下文信息中不同的服务接口、不同的服务调用方、不同的服务接口调用时间等,生成针对服务调用方不同目标数字身份中至少一项身份属性的身份验证请求;或者,也可以生成针对服务调用方同一目标数字身份中不同类型和/或数量的身份属性的身份验证请求;本发明实施例对此不作限定。
[0070]
103,向服务调用方发送身份验证请求,并接收服务调用方根据身份验证请求发出的身份证明。
[0071]
在本发明实施例中,服务提供方生成针对服务调用方目标数字身份中至少一项身份属性的身份验证请求后,可以向服务调用方发送所生成的身份验证请求,服务调用方在接收到服务提供方根据服务接口调用请求发出的针对目标数字身份中至少一项身份属性的身份验证请求后,可以根据身份验证请求,在本地数据库中所存储的数字身份查询目标数字身份,在查询到目标数字身份后,获取目标数字身份中对应的至少一项身份属性,并对所获取的至少一项身份属性根据身份验证请求生成身份证明,在生成身份证明后,服务调用方会向服务提供方发送所生成的身份证明,服务提供方会接收服务调用方根据身份验证请求发出的身份证明。
[0072]
若服务调用方根据针对目标数字身份中至少一项身份属性的身份验证请求,在本地数据库中查询到符合身份验证请求的多个目标数字身份,服务调用方可以根据预先制定的规则,自动选取生成身份证明的一个或多个目标数字身份,来生成身份证明;或者也可以通过交互方式由人工干预,选择生成身份证明的一个或多个目标数字身份,来生成身份证
明;本发明实施例对此不做限定。
[0073]
例如,所获取的至少一项身份属性,可以是目标数字身份的签发方私钥加密的身份属性,服务调用方可以根据身份验证请求,通过服务调用方的私钥对所获取的签发方私钥加密的身份属性进行加密,从而得到的身份证明,该身份证明是同时被服务调用方的私钥和目标数字身份的签发方的私钥加密的身份属性。
[0074]
104,对身份证明进行验证,并根据验证结果向服务调用方返回服务接口调用的结果。
[0075]
在本发明实施例中,服务提供方在接收到服务调用方根据身份验证请求生成的身份证明后,可以对所接收到的身份证明进行验证,例如,当身份证明可以是同时被服务调用方的私钥和目标数字身份的签发方的私钥加密后的身份属性时,可以根据服务调用方的公钥和数字身份的签发方的公钥对加密后的身份属性进行解密,得到对应的身份属性,从而实现对身份证明的验证。服务提供方在得到身份证明的验证结果后,可以根据身份证明的验证结果,确定是否调用对应的服务接口为服务调用方提供服务,若调用对应的服务接口为服务调用方提供服务,则向服务调用方返回服务接口调用的结果。
[0076]
本发明提供的服务接口安全调用方法,通过在服务提供方与服务调用方之间建立加密信道,在加密信道中进行对服务接口的安全调用,通过接收服务调用方发出的服务接口调用请求,根据服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求,向服务调用方发送身份验证请求,并接收服务调用方根据身份验证请求发出的身份证明,对身份证明进行验证,并根据验证结果向服务调用方返回服务接口调用的结果;利用服务调用方所持有的数字身份中的至少一项身份属性,通过服务调用方向服务提供方证明自己拥有数字身份的签发方所签发的数字身份,使服务调用方取得服务提供方对于自己的信任,从而访问对应的服务接口,可以保证服务接口访问的安全性,有效避免服务接口受到攻击。
[0077]
请参阅图3,图3是图1中提供的服务接口安全调用方法的一些实施例的流程示意图,如图3所示,该服务接口安全调用方法至少包括:
[0078]
301,接收服务调用方发出的身份验证提议。
[0079]
在本发明实施例中,服务调用方向服务提供方发出的是整合有服务接口调用请求的身份验证提议,服务提供方接收的是整合有服务接口调用请求的身份验证提议,在整合有服务接口调用请求的身份验证提议中除了包含服务接口调用请求外,还可以包含服务调用方自愿公开的身份属性,例如,服务调用方的姓名等身份属性,本发明实施例对服务调用方在身份验证提议中自愿公开的身份属性的类型不作限定,根据身份验证提议中包含的身份属性,可以确定生成身份验证请求的身份属性,也就是说,在生成身份验证请求时,可以选取身份验证提议中未公开的身份属性来生成身份验证请求。
[0080]
302,判断身份验证提议中服务接口调用请求携带的服务接口信息是否具有合法性。
[0081]
若服务接口调用请求携带的服务接口信息具有合法性,执行303;若服务接口调用请求携带的服务接口信息不具有合法性,执行308。
[0082]
在本发明实施例中,服务提供方接收到整合有服务接口调用请求的身份验证提议后,可以解析出服务接口调用请求携带的服务接口信息,例如,服务接口的名称、服务接口
的参数名称和数值等,并对解析出的服务接口信息进行合法性检查,判断身份验证提议中服务接口调用请求携带的服务接口信息是否具有合法性,例如,检查服务接口是否存在、服务接口的参数是否符合合法值域区间等,并得到检查结果。
[0083]
303,根据身份验证提议,生成针对目标数字身份中至少一项身份属性的身份验证请求。
[0084]
在本发明实施例中,服务提供方对服务接口信息进行合法性检查,得到的检查结果可以包括检查成功和检查失败。若服务接口调用请求携带的服务接口信息具有合法性,则合法性的检查结果为检查成功,表明服务接口信息满足基本的合法性要求,例如,服务接口存在、服务接口的参数符合合法值域区间等,则根据身份验证提议,生成针对目标数字身份中至少一项身份属性的身份验证请求。若若服务接口调用请求携带的服务接口信息不具有合法性,则合法性的检查结果为检查失败,表明服务接口信息不满足基本的合法性要求,例如,服务接口不存在和/或服务接口的参数不符合合法值域区间等,则向服务调用方返回服务接口调用失败的信息。可选地,服务接口调用失败的信息可以包含服务接口调用失败的的原因,例如,接口不存在和/或参数错误等。
[0085]
在一些可选的例子中,在根据身份验证提议,生成针对目标数字身份中至少一项身份属性的身份验证请求时,可以根据服务接口调用请求确定身份验证的策略,其中,身份验证的策略可以包括:目标数字身份中的至少一项身份属性和对至少一项身份属性进行身份证明的方式,对至少一项身份属性进行身份证明的方式可以包括直接身份信息证明,也可以称为数据验证,和零知识证明中的至少一种,然后根据身份验证的策略生成身份验证请求。
[0086]
在本发明实施例中,服务提供方在每一次服务接口被调用时,可根据不同的服务接口、不同的服务调用方、不同的服务接口调用时间等,确定不同的身份验证的策略,不同的身份验证的策略中所包含的目标数字身份、目标数字身份的身份属性的类型和/或数量、身份证明的方式中的至少一项可以不同,本发明实施例对此不作限定。
[0087]
可选地,身份验证的策略中目标数字身份的至少一项身份属性可以是选自服务调用方持有的以下一种数字身份:符合特定数字身份规范的数字身份,该数字身份不限定具体的数据格式和签发方;符合特定数据格式的数字身份,该数字身份的数字身份规范和数据格式固定,不限定数据源,即签发方;来自特定签发方的数字身份,该数字身份的签发方固定,不限定数字身份规范和数据格式;来自特定数据源的数字身份,该数字身份的签发方、数字身份数据规范和数据格式均固定。
[0088]
304,向服务调用方发送身份验证请求,并接收服务调用方根据身份验证请求发出的身份证明。
[0089]
在一些可选的例子中,当身份验证请求是身份验证的策略生成时,服务调用方在接收到服务提供方发出的身份验证请求后,可以根据身份验证请求,在本地数据库中查询目标数字身份,并获取目标数字身份中的至少一项身份属性,对至少一项身份属性根据身份验证请求中规定的身份证明的方式,生成身份证明。可选地,若服务调用方在查询或者生成身份证明的过程出现问题,服务调用方会向服务提供方返回错误信息。可选地,服务提供方可以针对身份验证请求设置应答时限,若服务调用方生成身份证明的过程超过应答时限,服务提供方判定身份验证失败。
[0090]
305,判断身份证明是否有效。
[0091]
若身份证明有效,执行306;若身份证明无效,执行308。
[0092]
在一些可选的例子中,当身份验证请求是身份验证的策略生成时,服务提供方在接收到服务调用方发出的身份证明后,可以根据身份验证的策略所确定的身份证明的方式,对身份证明进行验证,判断身份证明是否有效。例如,当身份证明的方式为数据验证时,服务调用方返回的证明自己持有满足服务提供方要求的数字身份的身份证明,可以是根据对应的至少一项身份属性得到的数值,该数值可以是通过服务调用方的私钥和目标数字身份的签发方的私钥对身份属性进行加密后得到。服务提供方可以通过服务调用方的公钥和数字身份的签发方的公钥对加密后的身份属性进行解密,实现对身份证明的验证。例如,当身份证明的方式为零知识证明时,服务调用方方返回的证明自己持有满足服务提供方要求的数字身份的身份证明,可以是根据服务提供方所构造的零知识证明请求,针对至少一项身份属性对应的数值与预设的值域的关系,例如大于或者小于,其中,至少一项身份属性对应的数值可以是通过服务调用方的私钥和目标数字身份的签发方的私钥对身份属性进行加密后得到。服务提供方可以通过服务调用方返回的至少一项身份属性对应的数值与预设的值域的关系,实现对身份证明的验证,从而可以使服务调用方在不泄露具体身份信息的情况下,获得服务提供方的信任,兼顾了服务调用方的隐私和服务接口的安全。
[0093]
306,基于所述目标数字身份,根据服务接口调用请求携带的服务接口信息,调用对应版本的服务接口提供服务,得到服务接口调用的结果。
[0094]
在本发明实施例中,服务提供方在根据服务接口调用请求携带的服务接口信息,调用服务接口提供服务时,可以基于生成身份验证请求的目标数字身份的身份属性的不同,调用不同版本的服务接口提供服务。
[0095]
307,向服务调用方返回服务接口调用的结果。
[0096]
在本发明实施例中,服务提供方对身份证明进行验证,得到的验证结果可以包括验证成功和验证失败。若身份证明有效,则身份证明的验证结果为验证成功,表明服务调用方持有符合服务提供方要求的数字身份,服务提供方对服务提供方存在执行服务接口调用所需的信任,允许根据服务接口调用请求携带的服务接口信息,调用对应的服务接口提供服务,并向服务调用方返回服务接口调用的结果。可选地,服务提供方可以将服务接口调用的结果附加在身份验证确认消息中,与身份验证确认消息同时返回给服务调用方。
[0097]
308,向服务调用方返回服务接口调用失败的信息。
[0098]
若身份证明是无效,则身份证明的验证结果为验证失败,表明服务调用方不持有符合服务提供方要求的数字身份,服务提供方对服务提供方不存在执行服务接口调用所需的信任,不允许根据服务接口调用请求携带的服务接口信息,调用对应的服务接口提供服务,并向服务调用方返回服务接口调用失败的信息。可选地,服务接口调用失败的信息可以包含服务接口调用失败的的原因,例如,身份验证失败等。
[0099]
请参阅图4,图4是本发明提供的另一种服务接口安全调用方法的流程示意图,图4所示的服务接口安全调用方法,应用于服务调用方,可以由服务接口安全调用装置执行,在服务调用方与服务提供方之间建立加密信道,例如,通过ssl、tls或者https等协议建立加密信道,本发明实施例对实现加密信道的协议类型不作限定,通过加密信道服务调用方和服务提供方可以进行公钥的交换,对服务接口的安全调用是在加密信道中进行,如图4所
示,该服务接口安全调用方法至少包括:
[0100]
401,向服务提供方发送服务接口调用请求。
[0101]
402,接收服务提供方根据服务接口调用请求发出的针对目标数字身份中至少一项身份属性的身份验证请求。
[0102]
403,根据身份验证请求生成身份证明,并向服务提供方发送身份证明。
[0103]
404,接收服务提供方根据身份证明的验证结果返回的服务接口调用的结果。
[0104]
在本发明实施例中,关于401、402、403、404的说明可以参见图1中关于101、102、103、104的说明,故此处不再复述。
[0105]
请参阅图5,图5是本发明提供的服务接口安全调用方法的一种应用场景的流程示意图,如图5所示,该服务接口安全调用方法的具体过程如下:
[0106]
服务调用方向服务提供方发送身份验证提议,身份验证提议的内容包括服务接口的名称,服务接口的参数名称和数值,以及服务调用方自愿公开的身份属性。
[0107]
服务提供方在收到身份验证提议后,解析其中服务接口调用请求包含的服务接口的名称、服务接口的参数名称和数值等,进行合法性检查。如果合法性检查失败,向服务调用方返回服务接口调用失败的信息。
[0108]
如果合法性检查通过,服务提供方向服务调用方返回身份验证请求。身份验证请求可以基于目标数字身份一个或多个身份属性,进行数据验证或者零知识证明生成。
[0109]
服务调用方在收到身份验证请求后,从本地数据存储的数字身份中查询目标数字身份,并根据身份验证请求生成身份证明,并将所生成的身份验证请求返回给服务提供方。
[0110]
服务提供方在收到身份证明后,对身份证明进行验证,确认身份证明有效后,执行对应的服务接口的功能。
[0111]
服务提供方在服务接口的功能执行完毕后,将执行结果附加在验证确认的消息内,返回给服务调用方。
[0112]
下面对本发明提供的界址点定位装置进行描述,下文描述的界址点定位装置与上文描述的界址点定位方法可相互对应参照。
[0113]
请参阅图6,图6是本发明提供的一种服务接口安全调用装置的结构示意图,图6所示的服务接口安全调用装置应用于服务提供方,可用来执行图1的服务接口安全调用方法,在服务提供方与服务调用方之间建立加密信道,例如,通过ssl、tls或者https等协议建立加密信道,本发明实施例对实现加密信道的协议类型不作限定,通过加密信道服务调用方和服务提供方可以进行公钥的交换,对服务接口的安全调用是在加密信道中进行,如图6所示,该服务接口安全调用装置至少包括:
[0114]
第一通信模块610,用于接收服务调用方发出的服务接口调用请求。
[0115]
第一处理模块620,用于根据服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求。
[0116]
第一通信模块610,还用于向服务调用方发送身份验证请求,并接收服务调用方根据身份验证请求生成的身份证明。
[0117]
第一处理模块620,还用于对身份证明进行验证。
[0118]
第一通信模块610,还用于根据验证结果向服务调用方返回服务接口调用的结果。
[0119]
可选地,第一处理模块620,用于根据服务接口调用请求确定身份验证的策略;身
份验证的策略包括:目标数字身份中的至少一项身份属性和对至少一项身份属性进行身份证明的方式;根据身份验证的策略生成身份验证请求;根据所确定的身份证明的方式对身份证明进行验证,得到验证结果。
[0120]
可选地,第一处理模块620,用于判断身份证明是否有效;若身份证明有效,基于所述至少一项身份属性,根据服务接口调用请求携带的服务接口信息,调用对应版本的服务接口提供服务,得到服务接口调用的结果。
[0121]
第一通信模块610,用于向服务调用方返回服务接口调用的结果;若身份证明无效,向服务调用方返回服务接口调用失败的信息。
[0122]
可选地,第一处理模块620,还用于判断身份验证提议中服务接口调用请求携带的服务接口信息是否具有合法性;若服务接口调用请求携带的服务接口信息具有合法性,根据服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求;
[0123]
第一通信模块610,还用于若服务接口调用请求携带的服务接口信息不具有合法性,向服务调用方返回服务接口调用失败的信息。
[0124]
请参阅图7,图7是本发明提供的另一种服务接口安全调用装置的结构示意图,图7所示的服务接口安全调用装置应用于服务提供方,可用来执行图4的服务接口安全调用方法,在服务提供方与服务调用方之间建立加密信道,例如,通过ssl、tls或者https等协议建立加密信道,本发明实施例对实现加密信道的协议类型不作限定,通过加密信道服务调用方和服务提供方可以进行公钥的交换,对服务接口的安全调用是在加密信道中进行,如图7所示,该服务接口安全调用装置至少包括:
[0125]
第二通信模块710,用于向服务提供方发送服务接口调用请求;接收服务提供方根据服务接口调用请求发出的针对目标数字身份中至少一项身份属性的身份验证请求。
[0126]
第二处理模块720,用于根据身份验证请求生成身份证明。
[0127]
第二通信模块710,还用于向服务提供方发送身份证明;接收服务提供方根据身份证明的验证结果返回的服务接口调用的结果。
[0128]
可选地,第二处理模块720,还用于根据身份验证请求在本地数据库中查询目标数字身份,并获取目标数字身份中的至少一项身份属性;对至少一项身份属性,根据身份验证请求中规定的身份证明的方式,生成身份证明。
[0129]
图8示例了一种电子设备的实体结构示意图,如图8所示,该电子设备可以包括:处理器(processor)810、通信接口(communications interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行服务接口安全调用方法,在该服务接口安全调用方法应用于服务提供方时,在服务提供方与服务调用方之间建立加密信道,对服务接口的安全调用是在加密信道中进行,该服务接口安全调用方法包括:
[0130]
接收服务调用方发出的服务接口调用请求;
[0131]
根据所述服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求;
[0132]
向所述服务调用方发送所述身份验证请求,并接收所述服务调用方根据所述身份验证请求发出的身份证明;
[0133]
对所述身份证明进行验证,并根据验证结果向所述服务调用方返回服务接口调用
的结果;
[0134]
在该服务接口安全调用方法应用于服务调用方时,在服务调用方与服务提供方之间建立加密信道,对服务接口的安全调用是在加密信道中进行,该服务接口安全调用方法包括:
[0135]
向服务提供方发送服务接口调用请求;
[0136]
接收所述服务提供方根据所述服务接口调用请求发出的针对目标数字身份中至少一项身份属性的身份验证请求;
[0137]
根据所述身份验证请求生成身份证明,并向所述服务提供方发送所述身份证明;
[0138]
接收所述服务提供方根据所述身份证明的验证结果返回的服务接口调用的结果。
[0139]
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0140]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的服务接口安全调用方法,在该服务接口安全调用方法应用于服务提供方时,在服务提供方与服务调用方之间建立加密信道,对服务接口的安全调用是在加密信道中进行,该服务接口安全调用方法包括:
[0141]
接收服务调用方发出的服务接口调用请求;
[0142]
根据所述服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求;
[0143]
向所述服务调用方发送所述身份验证请求,并接收所述服务调用方根据所述身份验证请求发出的身份证明;
[0144]
对所述身份证明进行验证,并根据验证结果向所述服务调用方返回服务接口调用的结果;
[0145]
在该服务接口安全调用方法应用于服务调用方时,在服务调用方与服务提供方之间建立加密信道,对服务接口的安全调用是在加密信道中进行,该服务接口安全调用方法包括:
[0146]
向服务提供方发送服务接口调用请求;
[0147]
接收所述服务提供方根据所述服务接口调用请求发出的针对目标数字身份中至少一项身份属性的身份验证请求;
[0148]
根据所述身份验证请求生成身份证明,并向所述服务提供方发送所述身份证明;
[0149]
接收所述服务提供方根据所述身份证明的验证结果返回的服务接口调用的结果。
[0150]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法所提供的服务接口安全调用方
法,在该服务接口安全调用方法应用于服务提供方时,在服务提供方与服务调用方之间建立加密信道,对服务接口的安全调用是在加密信道中进行,该服务接口安全调用方法包括:
[0151]
接收服务调用方发出的服务接口调用请求;
[0152]
根据所述服务接口调用请求,生成针对目标数字身份中至少一项身份属性的身份验证请求;
[0153]
向所述服务调用方发送所述身份验证请求,并接收所述服务调用方根据所述身份验证请求发出的身份证明;
[0154]
对所述身份证明进行验证,并根据验证结果向所述服务调用方返回服务接口调用的结果;
[0155]
在该服务接口安全调用方法应用于服务调用方时,在服务调用方与服务提供方之间建立加密信道,对服务接口的安全调用是在加密信道中进行,该服务接口安全调用方法包括:
[0156]
向服务提供方发送服务接口调用请求;
[0157]
接收所述服务提供方根据所述服务接口调用请求发出的针对目标数字身份中至少一项身份属性的身份验证请求;
[0158]
根据所述身份验证请求生成身份证明,并向所述服务提供方发送所述身份证明;
[0159]
接收所述服务提供方根据所述身份证明的验证结果返回的服务接口调用的结果。
[0160]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0161]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0162]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献