一种数据漫游的实现方法

申请号 CN201210044064.2 申请日 2012-02-24 公开(公告)号 CN103297385A 公开(公告)日 2013-09-11
申请人 腾讯科技(深圳)有限公司; 发明人 劳宁;
摘要 本 发明 适用于 计算机网络 通信领域,提供了一种数据漫游的实现方法和装置,其中方法包括:客户端获取与用户登录信息唯一对应的数据漫游凭证;客户端向数据漫游 服务器 发送带有数据漫游凭证的数据漫游 请求 ;数据漫游服务器根据接收到的数据漫游请求中包含的数据漫游凭证,验证所述数据漫游请求是否合法,若数据漫游请求合法,则所述客户端和数据漫游服务器之间进行漫游数据传输。本发明通过在客户端和数据漫游服务器进行数据通信之前还需经过用户数据漫游请求合法性的验证步骤,可以实现用户信息的安全隔离,此外,数据漫游服务器采用了目录形式的用户网络系统结构,上保证了文件 定位 的可扩展性和通用性。
权利要求

1.一种数据漫游的实现方法,其特征在于,所述方法包括下述步骤:
客户端获取与用户登录信息唯一对应的数据漫游凭证;
客户端向数据漫游服务器发送带有数据漫游凭证的数据漫游请求
数据漫游服务器根据接收到的数据漫游请求中包含的数据漫游凭证,验证所述数据漫游请求是否合法,若数据漫游请求合法,则所述客户端和数据漫游服务器之间进行漫游数据传输。
2.如权利要求1所述的一种数据漫游的实现方法,其特征在于,若所述数据漫游请求不合法,则数据漫游服务器不响应或者向客户端给出数据漫游请求不合法的提示信息。
3.如权利要求1所述的一种数据漫游的实现方法,其特征在于,所述客户端获取与用户登录信息唯一对应的数据漫游凭证步骤的具体实现如下:
客户端登录账号管理服务器并向账号管理服务器发送包含用户登录信息的漫游凭证申请
账号管理服务器根据接收到的漫游凭证申请验证登录用户的合法性,验证合格后向数据漫游服务器转发所述漫游凭证申请;
数据漫游服务器根据接收到的漫游凭证申请中包含的用户登录信息生成唯一对应的数据漫游凭证,再将所述数据漫游凭证通过账号管理服务器转发给客户端;以及客户端接收所述账号管理服务器转发的数据漫游凭证。
4.如权利要求3所述的一种数据漫游的实现方法,其特征在于,所述的账号管理服务器与数据漫游服务器之间是互信的,两者在通信时无需验证请求的合法性。
5.如权利要求1至4所述的任一种数据漫游的实现方法,其特征在于,所述客户端和数据漫游服务器之间进行漫游数据传输包括:客户端将用户数据上传到数据漫游服务器中和数据漫游服务器将存有的对应的用户数据同步到客户端。
6.如权利要求5所述的任一种数据漫游的实现方法,其特征在于,所述的数据漫游服务器为每个用户分配了一个用于存储用户数据的用户网络文件系统,所述用户网络文件系统内的用户数据以目录形式存在,通过相对路径来标识和定位相应的目录和用户数据。
7.如权利要求6所述的任一种数据漫游的实现方法,其特征在于,所述的用户网络文件系统构建了一个与其目录结构系统相对应的虚拟文件索引和一个用于加载本地最近保存数据的本地文件索引,通过将两者进行比对再调用文件操作接口函数完成在本地的文件操作。
8.如权利要求7所述的任一种数据漫游的实现方法,其特征在于,所述文件操作中的读文件操作的实现步骤如下:
检查本地是否存在所述需读取的文件且该文件是否为最新;
若本地存在此文件且为最新则直接读取该文件;
否则,若所述虚拟文件索引中存在此文件,则直接拉取该文件并更新时间戳和最新标志,若所述虚拟文件索引中不存在此文件,则用户网络文件系统给出读文件操作失败的提示信息。
9.一种数据漫游的实现装置,其特征在于,所述的实现装置包括:
凭证获取单元,用于客户端获取与用户登录信息唯一对应的数据漫游凭证;
漫游请求单元,用于客户端向数据漫游服务器发送带有数据漫游凭证的数据漫游请求;
凭证验证单元,用于数据漫游服务器根据接收到的数据漫游请求中包含的数据漫游凭证,验证所述数据漫游请求是否合法,若数据漫游请求合法,则所述客户端和数据漫游服务器之间进行漫游数据传输。
10.如权利要求9所述的一种数据漫游的实现装置,其特征在于:所述凭证获取单元包括:
申请发送模,用于客户端登录账号管理服务器并向账号管理服务器发送包含用户登录信息的漫游凭证申请;
验证转发模块,用于账号管理服务器根据接收到的漫游凭证申请验证登录用户的合法性,验证合格后向数据漫游服务器转发所述漫游凭证申请;
凭证生成模块,用于数据漫游服务器根据接收到的漫游凭证申请中包含的用户登录信息生成唯一对应的数据漫游凭证,再将所述数据漫游凭证通过账号管理服务器转发给客户端;以及
凭证获取模块,用于客户端接收所述账号管理服务器转发的数据漫游凭证。
11.如权利要求9所述的一种数据漫游的实现装置,其特征在于,所述的凭证验证单元包括:
文件分配模块,用于数据漫游服务器为每个用户分配了一个用于存储用户数据的用户网络文件系统,所述用户网络文件系统内的用户数据以目录形式存在,通过相对路径来标识和定位相应的目录和用户数据。
12.如权利要求11所述的一种数据漫游的实现装置,其特征在于,所述的文件分配模块包括:
索引构建装置,用于构建一个与其目录结构系统相对应的虚拟文件索引和一个用于加载本地最近保存数据的本地文件索引,通过将两者进行比对再调用文件操作接口函数完成在本地的文件操作。

说明书全文

一种数据漫游的实现方法

技术领域

[0001] 本发明属于计算机网络通信领域,尤其涉及一种通用的数据漫游的实现方法及装置。

背景技术

[0002] 数据漫游指将数据上传到网络服务器中保存,可以在任何地方任意操作数据。该数据可以是文本、影音以及其他相对安全的数据,现有的数据漫游技术实现了客户端可以在不同的设备和网络上自由同步和获取到最新的应用数据,用户无需携带数据存储设备,通过数据漫游可以方便地在不同的设备终端更新其在其他设备终端保存的数据,实现了数据分享的目的。
[0003] 图1示出了现有的数据漫游系统模型的结构图,包括数据漫游服务器和多个分布于不同设备终端和网络的客户端,数据漫游服务器和客户端之间通过网络连接,这里数据漫游服务器主要用于保存客户端上传的数据和将用户数据同步到其他的客户端去,所述上传数据的客户端就是数据产生者,所述数据同步的客户端就是数据的消费者,这样形成了一个完整的上传和下载的框架。图示以两个客户端为例,用户通过安装在设备终端1的客户端1将个人数据上传到数据漫游服务器中,在需要数据同步的时候,用户通过安装在设备终端2上的客户端2将数据漫游服务器保存的个人数据同步到客户端2,进一步保存到设备终端2上。
[0004] 但现有的数据漫游技术存在明显缺陷:现有的数据漫游模型无法实现用户数据的隔离,当用户将其个人数据上传到数据漫游服务器后,其他的用户无需验证就可以请求数据同步,这样用户可以随意修改和使用其他用户的个人漫游数据,使得无法很好的保护用户隐私。此外,现有数据漫游技术的通用性不好,因为各个数据漫游系统存储的漫游数据格式和存储方式不一样,需要根据漫游数据的实际情况开发不同的漫游系统,这样比较浪费人开发资源和服务器资源。

发明内容

[0005] 鉴于上述问题,本发明提供一种数据漫游的实现方法,旨在解决现有数据漫游技术无法安全隔离用户个人漫游数据信息、不能很好保护用户个人隐私的技术问题。
[0006] 本发明是这样实现的,一种数据漫游的实现方法,所述方法包括下述步骤:
[0007] 客户端获取与用户登录信息唯一对应的数据漫游凭证;
[0008] 客户端向数据漫游服务器发送带有数据漫游凭证的数据漫游请求;
[0009] 数据漫游服务器根据接收到的数据漫游请求中包含的数据漫游凭证,验证所述数据漫游请求是否合法,若数据漫游请求合法,则所述客户端和数据漫游服务器之间进行漫游数据传输。
[0010] 进一步,所述客户端获取与用户登录信息唯一对应的数据漫游凭证步骤的具体实现如下:
[0011] 客户端登录账号管理服务器并向账号管理服务器发送包含用户登录信息的漫游凭证申请
[0012] 账号管理服务器根据接收到的漫游凭证申请验证登录用户的合法性,验证合格后向数据漫游服务器转发所述漫游凭证申请;
[0013] 数据漫游服务器根据接收到的漫游凭证申请中包含的用户登录信息生成唯一对应的数据漫游凭证,再将所述数据漫游凭证通过账号管理服务器转发给客户端;以及[0014] 客户端接收所述账号管理服务器转发的数据漫游凭证。
[0015] 本发明的另一目的在于提供一种数据漫游的实现装置,本实现装置包括:
[0016] 凭证获取单元,用于客户端获取与用户登录信息唯一对应的数据漫游凭证;
[0017] 漫游请求单元,用于客户端向数据漫游服务器发送带有数据漫游凭证的数据漫游请求;
[0018] 凭证验证单元,用于数据漫游服务器根据接收到的数据漫游请求中包含的数据漫游凭证,验证所述数据漫游请求是否合法,若数据漫游请求合法,则所述客户端和数据漫游服务器之间进行漫游数据传输。
[0019] 进一步,所述凭证获取单元包括:
[0020] 申请发送模,用于客户端登录账号管理服务器并向账号管理服务器发送包含用户登录信息的漫游凭证申请;
[0021] 验证转发模块,用于账号管理服务器根据接收到的漫游凭证申请验证登录用户的合法性,验证合格后向数据漫游服务器转发所述漫游凭证申请;
[0022] 凭证生成模块,用于数据漫游服务器根据接收到的漫游凭证申请中包含的用户登录信息生成唯一对应的数据漫游凭证,再将所述数据漫游凭证通过账号管理服务器转发给客户端;以及
[0023] 凭证获取模块,用于客户端接收所述账号管理服务器转发的数据漫游凭证。
[0024] 本发明的有益效果是:本发明实施例提供了一种数据漫游的实现方法,该方法在客户端和数据漫游服务器进行数据通信之前还需经过用户数据漫游请求合法性的验证步骤,因为其他用户不具备与先前用户对应的数据漫游凭证,无法同步到先前用户的漫游数据,因此这样可以实现用户信息的安全隔离。
[0025] 本发明的另一个有益效果是:本发明实施例提供了一种数据漫游的实现装置,该装置引入了凭证获取单元和凭证验证单元,客户端和数据漫游服务器进行数据通信之前还需验证用户数据漫游请求合法性,因为其他用户不具备与先前用户对应的数据漫游凭证,无法同步到先前用户的漫游数据,因此这样可以实现用户信息的安全隔离,增强了用户漫游数据的安全性。附图说明
[0026] 图1是本现有的数据漫游系统模型的结构图;
[0027] 图2是本发明第一实施例提供的数据漫游的实现方法的流程图
[0028] 图3是本发明第二实施例提供的数据漫游模型的通信实体间的时序交互图;
[0029] 图4是本发明第三实施例提供的数据漫游服务器和客户端的对应关系图;
[0030] 图5是本发明第四实施例提供的数据漫游服务器功能实现的框架图;
[0031] 图6是本发明第五实施例提供的数据漫游的实现装置的结构图。

具体实施方式

[0032] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0033] 本发明实施例涉及客户端和数据漫游服务器之间的通过网络流连接实现数据通信,所述的客户端不限于一个且安装于不同的设备终端中,所述的数据通信的实现方式包括客户端向数据漫游服务器上传用户数据和数据漫游服务器向其他的客户端同步用户漫游数据,在进行所述的数据通信之前需要进行用户认证,只有通过验证的用户才能同步到数据漫游服务器上保存的用户漫游数据。列举一简单例子,通常QQ用户在计算机端登陆客户端后,客户端后台会请求将该用户的聊天记录上传到QQ数据漫游服务器中,QQ数据漫游服务器验证该用户合法后,保存所述的聊天记录,该用户通过其他计算机的客户端登陆QQ,若该用户需要查看保留在先前计算机的聊天记录就可以请求数据漫游,若QQ数据漫游服务器验证所述用户的数据漫游请求合法后,会将服务器上存储的该用户的聊天记录数据同步到所述客户端中,这样就实现了聊天记录数据的隔离,其他用户无法得到该用户的聊天记录。
[0034] 实施例一:
[0035] 图2示出了本发明第一实施例提供的数据漫游的实现方法的流程,一种数据漫游的实现方法,详述如下:
[0036] 在步骤S101中,客户端获取与用户登录信息唯一对应的数据漫游凭证。
[0037] 在本发明实施例中,所述的数据漫游凭证(ticket)是数据漫游服务器可以识别且能够确认的,在具体实现时,所述的数据漫游凭证能唯一标识客户端的用户登陆信息即可,特别的,所述用户登陆信息通常都是唯一标识用户的账号,相应的,数据漫游凭证可以是一串包括该账号信息的序列码,数据漫游服务器可以根据序列码来识别当前的数据漫游请求是否合法。
[0038] 在步骤S102中,客户端向数据漫游服务器发送带有数据漫游凭证的数据漫游请求。
[0039] 在本发明实施例中,安装于设备终端的客户端保存有数据漫游服务器的通信接口的,通过设备终端的连接网络用户可以直接将数据漫游请求发送给数据漫游服务器。所述的设备终端不限于计算机。
[0040] 在步骤S103中,数据漫游服务器根据接收到的数据漫游请求中包含的数据漫游凭证,验证所述数据漫游请求是否合法。
[0041] 在本实施例中,此步骤决定了用户漫游数据之间能否隔离,因为用户通过客户端将漫游数据上传到数据漫游服务器时服务器中保存有数据漫游凭证,现数据漫游服务器仅需将该数据漫游凭证与数据漫游请求包含的数据漫游凭证对比即可判断该请求是否合法。
[0042] 在步骤S104中,若所述的数据漫游请求合法,则所述客户端和数据漫游服务器之间进行漫游数据传输。这里的数据漫游传输包括数据的上传和同步。
[0043] 在步骤S105中,若所述数据漫游请求不合法,则数据漫游服务器不响应或者向客户端给出数据漫游请求不合法的提示信息。
[0044] 实施例二:
[0045] 图3示出了本发明第二实施例提供的数据漫游模型的通信实体间的时序交互图,此时序交互图清楚了描述了实现数据漫游的各个流程,在图2的基础上对客户端获取与用户登录信息唯一对应的数据漫游凭证的实现方式进一步进行优选限定。本实施例所述的数据漫游实现方法包括下述步骤:
[0046] 在步骤S201中,客户端登录账号管理服务器并向账号管理服务器发送包含用户登录信息的漫游凭证申请。
[0047] 在本实施例中,为了实现客户端能够获取数据漫游凭证,本发明实施例增加了账号管理服务器,所述的账号管理服务器负责验证用户的合法性,所述的客户端悉知账号管理服务器的通讯接口,在具体实现时,用户通过点击客户端上的登录按钮,客户端自动根据所述的通讯接口连接到账号管理服务器。
[0048] 在步骤S202中,账号管理服务器根据接收到的漫游凭证申请验证登录用户的合法性。
[0049] 在具体实现本实施例时,账号管理服务器可以通过用户设置的与用户登录账号相关联的密码来验证登录用户是否合法,若密码正确则判定当前登录的用户为合法用户,否则为非法用户。若检测到非法登录用户时,账号管理服务器不响应或给出非法用户的提示信息。
[0050] 在步骤S203中,用户登录验证合格后账号管理服务器向数据漫游服务器转发所述漫游凭证申请。
[0051] 在本发明实施例中,为了降低实现难度和开发成本,所述的账号管理服务器与数据漫游服务器之间是互信的,数据漫游服务器无需验证账号管理服务转发过来的漫游凭证申请是否合法,
[0052] 在步骤S204中,数据漫游服务器根据接收到的漫游凭证申请中包含的用户登录信息生成唯一对应的数据漫游凭证。
[0053] 在本发明实施例中,数据漫游服务器在接收到的用户登录信息的基础上增加验证信息后,将其封装成数据漫游凭证(ticket),所述的数据漫游凭证与用户登录信息唯一对应。
[0054] 在步骤S205中,所述数据漫游凭证通过账号管理服务器转发给客户端。
[0055] 在本发明实施例中,由于账号管理服务器与数据漫游服务器之间是互信的,账号管理服务器也无需验证数据漫游服务器传过来的数据漫游凭证是否符合要求,直接转发给客户端。
[0056] 在步骤S206中,客户端向数据漫游服务器发送带有数据漫游凭证的数据漫游请求。
[0057] 在步骤S207中,数据漫游服务器根据接收到的数据漫游请求中包含的数据漫游凭证,验证所述数据漫游请求是否合法。
[0058] 在步骤S208中,若数据漫游请求合法,则所述客户端和数据漫游服务器之间进行漫游数据传输,若所述数据漫游请求不合法,则数据漫游服务器不响应或者向客户端给出数据漫游请求不合法的提示信息。同样这里的漫游数据传输包括数据的上传和同步。
[0059] 实施例三:
[0060] 图4示出了本发明第三实施例提供的数据漫游服务器和客户端的对应关系,本实施例针对数据漫服务器的实现结构做出进一步描述,采用这种结构的数据漫游服务器保证了用户漫游数据定位的可扩展性和通用性。
[0061] 本实施例采用的数据漫游服务器为每个用户分配了一个用于存储用户数据的用户网络文件系统,各个用户网络文件系统之间相互隔离,图中仅以两个用回网络文件系统为例。
[0062] 所述的用户网络系统类似于本地文件系统,系统中的文件存放在根目录或其中的摸个文件夹中。在此,每个用户的网络文件系统是一个根目录,在这个根目录下,对应的用户可以创建子目录或者文件。在本发明实施中,使用相对路径来标识和定位目录和文件,“/”表示根目录,如图中的Hello.jpg文件其路径可表示为:/dirl/Hello.jpg。
[0063] 在本发明实施例中,数据漫游服务器验证数据漫游请求合法后,客户端11将数据上传到数据漫游服务其中,数据漫游服务器自动将所述上传的数据保存到用户网络文件系统1中,且数据以目录形式存在,可以通过相对路径来标识和定位相应的目录和用户数据;当该用户需要同步漫游数据时,发出的数据漫游请求经验证合法后,数据漫游服务器会自动检查用户网络文件系统1中的数据并将其同步到客户端12中。同理用户网络文件系统2的工作方式类似。漫游服务器为用户分配了跟目录文件系统后,这个文件系统就属于这个用户,用户可以在这个文件系统上创建目录或文件。用户只需根据路径来以文件存取的方式来更新和获取漫游数据,保证了文件定位的可扩展性和通用性。
[0064] 实施例四:
[0065] 图5示出了本发明第四实施例提供的数据漫游服务器功能实现的框架图,本发明实施例是针对客户端与采用图4示结构的数据漫游服务器的数据传输的实现结构框图,以此可以进一步说明本发明的实施方案是确切可行的。
[0066] 客户端与数据漫游服务器之间的漫游数据传输本质将就是向用户登录信息相对应的用户网络文件系统中的数据进行文件操作,包括文件删除、文件追加、写文件和读文件操作等。对于不同的操作就有相应的实现方法。
[0067] 首先本框架包括接口层(AppDataRoamApi)、实现操作的系统逻辑层(AppDataRoamImpl、LocaldirMgr和VirtualDirMgr)、与数据漫游服务器通信的协议层(TfsApi)和数据漫游服务器(TFS Server)。其中接口层提供了基本文件操作接口,包括StoreDeleteFile、StoreAppendFile、StoreWriteFile和StoreReadFile,分别对应文件删除、文件追加、写文件和读文件操作。系统逻辑层中的VirtualDirMgr是一棵虚拟的文件系统索引树,标志文件系统目录数及文件的大小和时间戳等基本信息,分成VirtualDirMgr(from server)和VirtualDirMgr(locally)两个部分,其中在初始化时,VirtualDirMgr(from server)通过调用TfsApi中的ListDirInfo函数从TFS server拉取文件系统索引及文件时间戳,构建与server文件目录系统相对应的虚拟文件目录结构,VirtualDirMgr(locally)则用于从安装有客户端的本地加载上次客户端退出时本地所保存的本地缓存的文件系统索引。通过对比VirtualDirMgr(from server)和VirtualDirMgr(locally)可得知本地文件和服务器上传存储的用户文件的区别之处,从而可以进行下一步具体的文件操作。具体如下:
[0068] 当需要在本地新建目录、删除目录、删除文件、标志本地文件最新与否,可以通过委托LocaldirMgr实现相应的操作。
[0069] 当需要进行读文件操作调用StoreReadFile函数时则通过AppDataRoamImpl接口实现:首先向VirtualDirMgr查询服务器是否有这个文件,本地本件是否已更新到最新,然后向LocaldirMgr查询本地是否有这个文件,若本地存在这个文件且为最新,则直接读取这个文件后返回上层,若本地不存在此文件或者本地保存的此文件不是最新,且服务器中存在此文件时,就调用TfsApi协议层中的DownloadFile函数从server拉取所述最新文件,拉取成功后,通过VirtualDirMgr更新文件时间戳及是否最新的标志,再用LocalDirMgr将拉取的文件存储到本地,然后读取文件内容后返回上层。
[0070] 当需要调用AppDataRoamApi接口层其他的函数进行相应操作时,就直接转到TfsApi中的对应函数与server交互,操作成功后,分别委托VirtualDirMgr和LocalDirMgr更新文件系统的信息,及更新本地文件系统。
[0071] 需要说明的是,本发明实施例只是实现数据漫游服务器基本功能的一种框架模式,但本发明不限于此,在此基础上修改或等同变形亦落在本发明保护范围内。
[0072] 实施例五:
[0073] 图6示出了本发明第五实施例提供的数据漫游的实现装置的结构,为了便于说明仅示出了与本发明实施例相关的部分,下述如下。
[0074] 一种数据漫游的实现装置包括:
[0075] 凭证获取单元,用于客户端获取与用户登录信息唯一对应的数据漫游凭证;
[0076] 漫游请求单元,用于客户端向数据漫游服务器发送带有数据漫游凭证的数据漫游请求;
[0077] 凭证验证单元,用于数据漫游服务器根据接收到的数据漫游请求中包含的数据漫游凭证,验证所述数据漫游请求是否合法,若数据漫游请求合法,则所述客户端和数据漫游服务器之间进行漫游数据传输。
[0078] 进一步作为优选的实施例,所述的凭证获取单元包括:
[0079] 申请发送模块,用于客户端登录账号管理服务器并向账号管理服务器发送包含用户登录信息的漫游凭证申请;
[0080] 验证转发模块,用于账号管理服务器根据接收到的漫游凭证申请验证登录用户的合法性,验证合格后向数据漫游服务器转发所述漫游凭证申请;
[0081] 凭证生成模块,用于数据漫游服务器根据接收到的漫游凭证申请中包含的用户登录信息生成唯一对应的数据漫游凭证,再将所述数据漫游凭证通过账号管理服务器转发给客户端;以及
[0082] 凭证获取模块,用于客户端接收所述账号管理服务器转发的数据漫游凭证。
[0083] 进一步,所述的凭证验证单元包括:
[0084] 文件分配模块,用于数据漫游服务器为每个用户分配了一个用于存储用户数据的用户网络文件系统,所述用户网络文件系统内的用户数据以目录形式存在,通过相对路径来标识和定位相应的目录和用户数据。
[0085] 进一步,所述的文件分配模块包括:
[0086] 索引构建装置,用于构建一个与其目录结构系统相对应的虚拟文件索引和一个用于加载本地最近保存数据的本地文件索引,通过将两者进行比对再调用文件操作接口函数完成在本地的文件操作。
[0087] 在本发明实施例中,数据漫游的实现装置与现有技术中数据漫游实现装置相比,通过增加了凭证获取单元和凭证验证单元,实现了用户漫游数据的隔离。此外,在数据漫游服务器采用了目录形式的用户网络系统结构,上保证了文件定位的可扩展性和通用性,[0088] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
QQ群二维码
意见反馈