首页 / 专利库 / 软件 / 逻辑文件 / 一种构建糅合应用的方法及系统

一种构建糅合应用的方法及系统

阅读:453发布:2024-01-03

专利汇可以提供一种构建糅合应用的方法及系统专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种构建Mashup应用的方法,包括:用户在浏览器内运行从Mashup平台得到的业务逻辑代码后,选择需要 访问 的资源,向资源提供者发送包括访问令牌(access token)的资源 请求 消息;资源提供者收到用户的资源请求消息后,验证access token的有效性,有效,则向用户返回请求的资源,同时记录资源的使用情况,并向Mashup平台返回资源的使用情况。本发明同时公开了一种构建Mashup应用的系统,采用该方法和系统,能保证Mashup平台提供的业务逻辑代码的安全性,还可以使资源提供者和Mashup平台实现计费的功能。,下面是一种构建糅合应用的方法及系统专利的具体信息内容。

1.一种构建糅合(Mashup)应用的方法,其特征在于,该方法包括:
用户在浏览器内运行从Mashup平台得到的业务逻辑代码后,选择需要访问的资源,向资源提供者发送包括访问令牌(access token)的资源请求消息;
资源提供者收到用户的资源请求消息后,验证access token的有效性,有效,则向用户返回请求的资源,同时记录资源的使用情况,并向Mashup平台返回资源的使用情况。
2.根据权利要求1所述的方法,其特征在于,所述在用户在浏览器内运行从Mashup平台得到的业务逻辑代码之前,还包括:
用户和资源提供者分别向Mashup平台进行注册,Mashup平台会向用户返回Mashup平台标识(MID)、用户标识(UID)、以及验证信息,向资源提供者返回MID和资源标识(RID);
用户接收到MID和UID后,选择需要使用的业务,向Mashup平台提出使用申请,同时提供UID和验证信息;
Mashup平台收到使用申请后,根据UID和验证信息验证用户身份的有效性,有效,则向用户返回该业务的业务逻辑代码、相应的业务描述文件、以及accesstoken。
3.根据权利要求1或2所述的方法,其特征在于,所述验证access token的有效性,具体为:比较access token里的MID与资源提供者保存的MID是否一致;比较access token里的UID与资源请求消息中的UID是否相同;判断accesstoken里的有效时间(T有效)是否在有效时间内。
4.根据权利要求3所述的方法,其特征在于,所述用户在浏览器内运行从Mashup平台得到的业务逻辑代码,具体为:
Mashup平台和用户分别有对应的一对公私密钥和两个数字证书(DCM和DCU);
用户选择需要使用的业务,向Mashup平台提出使用申请,同时提供UID和验证信息;
Mashup平台收到使用申请后,验证用户身份是否有效,有效,则Mashup平台依据UID、验证信息、以及该业务的申请信息生成access token,并用Mashup平台的私用密钥KMR对access token进行数字签名;
Mashup平台将该业务的业务逻辑代码及相应的业务描述文件、数字签名后的access token、以及DCM发送给用户,数字签名后的access token、以及DCM为消息一(message 1);
用户收到该业务逻辑代码后在浏览器内运行该业务逻辑代码。
5.根据权利要求4所述的方法,其特征在于,所述选择需要访问的资源,向资源提供者发送包括access token的资源请求消息,具体为:
选择需要访问的资源,用户使用私有密钥KUR对message 1、UID、以及用户通过Mashup平台申请该种资源的时刻(tu时刻)进行数字签名,并向资源提供者发送包括数字签名后的信息以及DCU的资源请求消息。
6.根据权利要求5所述的方法,其特征在于,所述资源提供者验证accesstoken的有效性,具体为:
资源提供者收到资源请求消息后,用从证书认证(CA)机构获得的CA的公开密钥认证消息验证消息来源是否真实,消息真实,则用DCU中的用户公钥KUP解密得到使用用户私钥KUR进行数字签名的消息;
资源提供者进一步用CA的公开密钥验证message 1来源是否真实,消息真实,则用DCM中的Mashup平台公钥KMP解密得到使用Mashup平台私钥KMR进行数字签名的access token;
资源提供者验证access token的内容是否有效,有效,资源提供者根据用户的资源请求信息向用户返回相应的资源。
7.根据权利要求6所述的方法,其特征在于,所述数字签名后的信息还包括:用户在资源提供者处的身份标识RUID、以及口令RUPW,和/或,资源对用户的认证信息KUR;
所述用CA的公开密钥验证message 1来源是否真实之前,进一步包括:资源提供者将数字签名的信息里的RUID、以及RUPW,和/或,KUR与自身保存的RUID、以及RUPW,和/或,KUR进行比较,一致,则用CA的公开密钥验证message1来源是否真实。
8.一种构建Mashup应用的系统,其特征在于,该系统包括:用户、Mashup平台、以及资源提供者;其中,
用户,用于在浏览器内运行从Mashup平台得到的业务逻辑代码后,选择需要访问的资源时,向资源提供者发出包括access token的资源请求消息,并用于接收资源提供者返回请求的资源;
Mashup平台,用于向用户提供access token、业务逻辑代码;
资源提供者,用于接收用户发送的资源请求消息,并在验证access token有效后向用户返回请求的资源,记录资源的使用情况,同时向Mashup平台返回资源的使用情况。
9.根据权利要求8所述的系统,其特征在于,所述Mashup平台,还用于向用户发送MID、UID、以及验证信息,向资源提供者发送MID和RID;
所述用户,还用于接收Mashup平台发送的MID、UID、以及验证信息;
所述资源提供者,还用于接收Mashup平台发送的MID和RID。
10.根据权利要求8或9所述的系统,其特征在于,所述系统还包括:
CA机构,用于向用户、Mashup平台提供各自对应的公私密钥和数字证书,同时向资源提供者提供CA的公开密钥。

说明书全文

技术领域

发明涉及网络应用技术领域,尤其涉及一种构建糅合(Mashup)应用的方法及系统。

背景技术

在网络开发领域,Mashup是指将网络上多个数据源或服务整合起来,以创造新的增值服务的网络应用程序。Mashup通过互联网上的应用开发编程接口(API)来聚合和重用数据,进而轻松创建一个应用。Mashup可以聚合不同来源、不同类型的数据,并以个性化的方式来展示,它扩展了数据的利用方式,提供了创建应用程序的多样性。
Mashup有两种聚合方式,一种是在浏览器端聚合,一种是在服务器端聚合。当Mashup应用在端浏览器端生成时,使用浏览器脚本聚合内容,这种方法也称为富Internet应用程序(RIA);当Mashup应用在服务器端生成时,Mashup服务器通过简单对象(Soap)或者表述性状态转移(Rest,Representational StateTransfer)等协议向外部的API/资源提供者发送请求,API/资源提供者返回一个响应给服务器,服务器分析返回数据,按照合理的方式组合各种数据与服务,最终把聚合的结果发送回用户。
浏览器端聚合生成Mashup应用的一种形式是:业务开发者在Mashup平台处生成构建应用的业务逻辑代码,用户,也就是业务使用者,从Mashup平台处下载业务逻辑代码,Mashup应用的聚合过程在用户浏览器内完成,用户运行业务逻辑代码过程中需要某种资源时,由用户直接向资源提供者发送请求并获得相应资源。这种模式下,由Mashup平台向用户进行收费、资源提供者向Mashup平台进行收费。但是,由于这种模式Mashup平台缺少相应的控制,因此会造成计费、安全等管理上的困难,具体表现在以下两个方面:
首先,用户将构建Mashup应用的逻辑代码下载到浏览器内后,用户会直接向资源提供者请求资源,这种情况下,Mashup平台不知道用户使用资源的情况,而资源提供者也无法记录资源被Mashup平台使用的情况,如此,造成计费的困难。
其次,用户一旦将Mashup应用的业务逻辑代码下载到浏览器内,任何其他用户都可以拷贝业务逻辑代码在浏览器内构建Mashup应用,如此,Mashup平台无法对业务逻辑代码提供保护,也就是说,Mashup平台的安全性受到影响。

发明内容

有鉴于此,本发明的主要目的在于提供一种使用Mashup应用的方法及系统,以解决在使用浏览器内构建Mashup应用时缺乏管理的缺点。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供一种构建Mashup应用的实现方法,包括:
用户在浏览器内运行从Mashup平台得到的业务逻辑代码后,选择需要访问的资源,向资源提供者发送包括访问令牌(access token)的资源请求消息;
资源提供者收到用户的资源请求消息后,验证access token的有效性,有效,则向用户返回请求的资源,同时记录资源的使用情况,并向Mashup平台返回资源的使用情况。
上述方案中,所述在用户在浏览器内运行从Mashup平台得到的业务逻辑代码之前,还包括:
用户和资源提供者分别向Mashup平台进行注册,Mashup平台会向用户返回Mashup平台标识(MID)、用户标识(UID)、以及验证信息,向资源提供者返回MID和资源标识(RID);
用户接收到MID和UID后,选择需要使用的业务,向Mashup平台提出使用申请,同时提供UID和验证信息;
Mashup平台收到使用申请后,根据UID和验证信息验证用户身份的有效性,有效,则向用户返回该业务的业务逻辑代码、相应的业务描述文件、以及accesstoken。
上述方案中,所述验证access token的有效性,具体为:比较access token里的MID与资源提供者保存的MID是否一致;比较access token里的UID与资源请求消息中的UID是否相同;判断access token里的有效时间(T有效)是否在有效时间内。
上述方案中,所述用户在浏览器内运行从Mashup平台得到的业务逻辑代码,具体为:
Mashup平台和用户分别有对应的一对公私密钥和两个数字证书(DCM和DCU);
用户选择需要使用的业务,向Mashup平台提出使用申请,同时提供UID和验证信息;
Mashup平台收到使用申请后,验证用户身份是否有效,有效,则Mashup平台依据UID、验证信息、以及该业务的申请信息生成access token,并用Mashup平台的私用密钥KMR对access token进行数字签名;
Mashup平台将该业务的业务逻辑代码及相应的业务描述文件、数字签名后的access token、以及DCM发送给用户,数字签名后的access token、以及DCM为消息一(message 1);
用户收到该业务逻辑代码后在浏览器内运行该业务逻辑代码。
上述方案中,所述选择需要访问的资源,向资源提供者发送包括accesstoken的资源请求消息,具体为:
选择需要访问的资源,用户使用私有密钥KUR对message 1、UID、以及用户通过Mashup平台申请该种资源的时刻(tu时刻)进行数字签名,并向资源提供者发送包括数字签名后的信息以及DCU的资源请求消息。
上述方案中,所述资源提供者验证access token的有效性,具体为:
资源提供者收到资源请求消息后,用从证书认证(CA)机构获得的CA的公开密钥认证消息验证消息来源是否真实,消息真实,则用DCU中的用户公钥KUP解密得到使用用户私钥KUR进行数字签名的消息;
资源提供者进一步用CA的公开密钥验证message 1来源是否真实,消息真实,则用DCM中的Mashup平台公钥KMP解密得到使用Mashup平台私钥KMR进行数字签名的access token;
资源提供者验证access token的内容是否有效,有效,资源提供者根据用户的资源请求信息向用户返回相应的资源。
上述方案中,所述数字签名后的信息还包括:用户在资源提供者处的身份标识RUID、以及口令RUPW,和/或,资源对用户的认证信息KUR;
所述用CA的公开密钥验证message 1来源是否真实之前,进一步包括:资源提供者将数字签名的信息里的RUID、以及RUPM,和/或,KUR与自身保存的RUID、以及RUPW,和/或,KUR进行比较,一致,则用CA的公开密钥验证message1来源是否真实。
本发明还提供了一种构建Mashup应用的实现系统,包括:用户、Mashup平台、以及资源提供者;其中,
用户,用于在浏览器内运行从Mashup平台得到的业务逻辑代码后,选择需要访问的资源时,向资源提供者发出包括access token的资源请求消息,并用于接收资源提供者返回请求的资源;
Mashup平台,用于向用户提供access token、业务逻辑代码;
资源提供者,用于接收用户发送的资源请求消息,并在验证access token有效后向用户返回请求的资源,记录资源的使用情况,同时向Mashup平台返回资源的使用情况。
上述方案中,所述Mashup平台,还用于向用户发送MID、UID、以及验证信息,向资源提供者发送MID和RID;
所述用户,还用于接收Mashup平台发送的MID、UID、以及验证信息;
所述资源提供者,还用于接收Mashup平台发送的MID和RID。
上述方案中,所述系统还包括:
CA机构,用于向用户、Mashup平台提供各自对应的公私密钥和数字证书,同时向资源提供者提供CA的公开密钥。
本发明所提供的构建Mashup应用的实现方法及系统,用户访问某个资源的时候需要发送包括access token的资源请求消息给资源提供者,资源提供者只有验证access token有效后才会向用户返回请求的资源,同时记录资源的使用情况,并向Mashup平台返回资源的使用情况,通过UID可以识别出请求的用户是否是合法用户,如此,保证了Mashup平台提供的业务逻辑代码的安全性,资源提供者可以根据access token里的UID和MID确定是哪个用户在哪个Mashup平台使用了资源,从而使资源提供者和Mashup平台可以实现计费的功能;另外,本发明采用数字证书的方式实现了在浏览器端构建Mashup应用模式下的安全认证。
附图说明
图1为实现本发明构建Mashup应用的方法流程示意图;
图2为用户获得业务逻辑代码的方法流程示意图;
图3为本发明实施例的方法流程示意图;
图4为实现本发明构建Mashup应用的系统结构示意图。

具体实施方式

下面结合附图及具体实施例对本发明再作进一步详细的说明。
本发明构建Mashup应用的实现方法如图1所示,包括以下步骤:
步骤101:用户在浏览器内运行从Mashup平台得到的业务逻辑代码后,在需要访问某种资源时,向资源提供者发送包括access token的资源请求消息;
这里,用户在浏览器内运行从Mashup平台得到的业务逻辑代码后,就完成了Mashup应用的自动聚合过程;
所述access token是由Mashup平台提供给用户的;
所述access token包括:MID、UID、T有效、以及Mashup平台生成access token的时刻(tm时刻);
所述资源请求消息中还包括:UID;
Mashup平台和资源提供者可以事先通过其他方式协商设定所述T有效。
步骤102:资源提供者收到用户的资源请求消息后,验证access token的有效性,如果有效,则向用户返回请求的资源,同时记录资源的使用情况,并向Mashup平台返回资源的使用情况;
所述验证access token的有效性,具体为:
比较access token里的MID与资源提供者保存的MID是否一致;比较accesstoken里的UID与资源请求消息中的UID是否相同;判断access token里的T有效是否在有效时间内。如果access token里的MID与资源提供者保存的MID一致,access token里的UID与资源请求消息中的UID相同,并且access token里的T有效在有效时间内,则认为access token有效。
其中,在步骤101之前,如图2所示,该方法还包括:
步骤201:用户和资源提供者分别向Mashup平台进行注册,Mashup平台会向用户返回该Mashup平台的MID、UID、以及验证信息,向资源提供者返回MID和资源标识(RID);
这里,用户向Mashup平台进行注册时,会向Mashup平台提供用户的相关信息,例如:用户身份信息、联系方式等,Mashup平台据此向该用户分配UID、以及验证信息;资源提供者向Mashup平台注册时会提供资源的相关信息,如:资源名称、资源描述信息等,Mashup平台据此向该资源提供者分配RID,资源提供者收到MID和RID后保存MID和RID。
后续用户需要访问资源时,所述RID可以包括在用户向资源提供者发送的资源请求消息中,以便资源提供者根据RID向用户返回请求的资源;用户通过构建Mashup应用,可以访问到需要访问的资源,而RID是由Mashup平台分配的,与资源之间是一一对应的关系,会携带在关于资源的描述信息里,用户根据资源的描述信息选择使用的资源,从而据此可以获得该资源的RID。
步骤202:用户接收到MID和UID后,选择使用某个业务时,向Mashup平台提出使用申请,同时提供UID和验证信息。
步骤203:Mashup平台收到使用申请后,根据UID和验证信息验证用户身份的有效性,如果有效,则向用户返回该业务的业务逻辑代码、相应的业务描述文件、以及access token;
这里,所述相应的业务描述文件用于完成对业务逻辑的描述功能,用户将业务逻辑代码及相应的业务描述文件下载到本地浏览器内后,浏览器根据业务描述文件完成Mashup应用的自动聚合过程;
所述验证用户身份的有效性,具体为:
用户与Mashup平台可以共同规定一个UID对应一个验证信息;Mashup平台把接收到的UID和验证信息与Mashup平台保存的UID和验证信息进行比较,如果一致,则认为用户身份有效,否则,认为用户身份无效。
上述过程中,资源提供者根据access token中的MID、UID可以知道是哪个用户通过哪个Mashup平台使用了资源,并上报给相应Mashup平台,资源提供者和Mashup平台将此作为计费的依据;另外,通过UID可以识别出请求的用户是否是合法用户,如此,就使得通过拷贝业务逻辑代码等形式构建Mashup应用的不合法的用户不能获取资源,从而实现了对构建Mashup业务逻辑代码保护的目的。
为了保证Mashup平台的业务逻辑代码的安全,所述access token应该具有不可伪造、不可被篡改、以及使用时限的特点,因此,本发明采用数字证书的方式保证access token在传输过程中的机密性和完整性,从而实现对Mashup平台的业务逻辑代码的保护作用,具体处理流程如图3所示,包括以下步骤:
步骤301:Mashup平台和用户分别向同一个CA机构注册,分别得到对应的一对公私密钥和两个数字证书;
其中,Mashup平台得到的公私密钥为KMP、KMR,数字证书为DCM;用户得到的公私密钥为KUP、KUR,数字证书为DCU;
所述数字证书中包括公钥。
步骤302:用户收到公私密钥和数字证书后,选择使用某个业务时,向Mashup平台提出使用申请,同时提供UID和验证信息。
步骤303:Mashup平台收到使用申请后,根据UID和验证信息验证用户身份是否有效,如果有效,Mashup平台依据UID、验证信息、以及该业务的申请信息生成access token,并用Mashup平台的私用密钥KMR对access token进行数字签名,之后执行步骤304,如果无效,不做任何处理,结束当前处理流程;
步骤304:Mashup平台将该业务的业务逻辑代码及相应的业务描述文件、数字签名后的access token、以及DCM发送给用户;
这里,将数字签名后的access token、以及DCM称为消息一(message 1)。
步骤305:用户收到业务逻辑代码后在浏览器内运行该业务逻辑代码,需要访问某种资源时,用户使用私有密钥KUR对message 1、UID、以及用户通过Mashup平台申请该种资源的时刻(tu时刻)进行数字签名,并向资源提供者发送包括数字签名后的信息以及DCU的资源请求消息;
这里,所述数字签名的信息还可以包括:用户在资源提供者处的身份标识RUID、以及口令RUPW,和/或,资源对用户的认证信息KUR;
用户在资源提供者处注册后便可获得所述RUID、以及RUPW,和/或,KUR。
步骤306:资源提供者收到资源请求消息后,用从CA机构获得的CA的公开密钥认证消息验证消息来源是否真实,如果消息真实,则用DCU中的用户公钥KUP解密得到使用用户私钥KUR进行数字签名的信息,即:message 1、UID、以及tu时刻,执行步骤307,否则,不做任何处理,结束当前处理流程;
这里,所述DCU是一个采用CA机构的私钥加密过的证书,资源提供者只有用从CA机构获得的CA的公开密钥才能解开DCU,获得用户公钥KUP;
只要用CA的公开密钥认证消息中的公开密钥解开了DCU,就证明了消息来源的真实性。
步骤307:资源提供者进一步用CA的公开密钥验证message 1来源是否真实,如果消息真实,则用DCM中的Mashup平台公钥KMP解密得到使用Mashup平台私钥KMR进行数字签名的access token,执行步骤308,否则,不做任何处理,结束当前处理流程;
这里,所述DCM是一个采用CA机构的私钥加密过的证书,资源提供者只有用从CA机构获得的CA的公开密钥才能解开DCM;
只要用CA的公开密钥解开了DCM,就证明了消息来源的真实性;
如果数字签名的信息里包括:RUID、以及RUPW,和/或,KUR,则在步骤307之前,资源提供者将数字签名的信息里的RUID、以及RUPW,和/或,KUR与自身保存的RUID、以及RUPM,和/或,KUR进行比较,如果一致,则执行步骤307,进一步用CA的公开密钥验证message1来源是否真实,否则,不做任何处理,结束当前处理流程。
步骤308:资源提供者验证access token的内容是否有效,如果有效,资源提供者根据用户的资源请求信息向用户返回相应的资源,同时记录用户使用资源的情况,并向Mashup平台返回资源的使用情况,结束当前处理流程。
本实施例采用数字证书的方式保证了access token具有不可伪造、不可被篡改、以及有使用时限的特点,还保证了access token在传输过程中的机密性和完整性,进而实现了对Mashup平台业务应用逻辑代码的保护作用。
本发明还可以将Mashup平台看作用户和资源提供者可信任的第三方,使Mashup平台具有CA机构颁发证书的功能,处理过程与上面描述的过程类似,只是由Mashup平台向用户颁发证书,资源提供者从Mashup平台处获得公有密钥来验证信息的真实性,通过这种方法,也可以达到浏览器端构建Mashup应用模式下的安全认证。
基于上述方法,本发明还提供了一种构建Mashup应用的实现系统,如图4所示,该系统包括:用户41、Mashup平台42、以及资源提供者43;其中,
用户41,用于在浏览器内运行从Mashup平台得到的业务逻辑代码后,需要访问某种资源时,向资源提供者43发出包括access token的资源请求消息,并用于接收资源提供者43返回请求的资源;
Mashup平台42,用于向用户41提供access token、业务逻辑代码;
资源提供者43,用于接收用户41发送的资源请求消息,并在验证accesstoken有效后向用户41返回请求的资源,记录资源的使用情况,同时向Mashup平台42返回资源的使用情况。
其中,所述Mashup平台42,还用于向用户41发送MID、UID、验证信息、以及相应的业务描述文件,向资源提供者43发送MID和RID;
所述用户41,还用于接收Mashup平台42发送的MID、UID、验证信息、以及相应的业务描述文件;
所述资源提供者43,还用于接收Mashup平台42发送的MID和RID。
Mashup平台42和用户41分别有对应的一对公私密钥和两个数字证书(DCM和DCU);
用户41还用于选择需要使用的业务,向Mashup平台提出使用申请,同时提供UID和验证信息,收到业务逻辑代码后在浏览器内运行该业务逻辑代码;
Mashup平台42还用于收到使用申请后,验证用户身份是否有效,有效,则依据UID、验证信息、以及该业务的申请信息生成access token,并用自身的私用密钥KMR对access token进行数字签名,将该业务的业务逻辑代码及相应的业务描述文件、数字签名后的access token、以及DCM发送给用户41。
所述系统还可以包括:
CA机构,用于向用户41、Mashup平台42提供各自对应的公私密钥和数字证书,同时向资源提供者43提供CA的公开密钥;
所述Mashup平台42还可以具有等同于CA机构的功能,用于向用户41发送公私密钥和数字证书,同时向资源提供者43提供Mashup平台42的公开密钥。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈