一种web系统页面集成防盗链方法及系统的制作方法

文档序号:9436026阅读:692来源:国知局
一种web系统页面集成防盗链方法及系统的制作方法
【技术领域】
[0001]本发明涉及互联网安全领域,具体涉及一种WEB系统页面集成防盗链方法及系统。
【背景技术】
[0002]鉴于浏览器的方便性,越来越多的系统采用B/S模式开发,由于业务的需要,需将很多系统嵌入到一起,系统间的联系越来越紧密。系统集成的方式有很多,比如数据集成、业务集成和页面集成。其中,页面集成是B/S模式的系统最常用的一种,但是由于URL地址容易泄露,容易出现‘盗链’情况。
[0003]目前常用的页面集成防盗链的处理方式主要由两种:第一种方式,时间戳验证,时间戳验证是在A系统集成B系统前,在url地址中添加一个时间戳参数,B系统获取请求后,判断时间戳是否在一个有效的时间范围内,若在允许范围内,则允许,否则拒绝A系统集成B系统。
[0004]第二种方式为Token验证,Token验证是A系统在集成B系统前,在C系统中获取一个token值,然后在请求B的url地址中添加该token参数,当B系统获取Token参数后再到C系统中进行验证,验证成功后则允许A系统集成B系统,否则拒绝A系统集成B系统。
[0005]其中,采用第一种方式,其优点为执行效率高,开发时间最短;其缺点为需要保持两个系统时钟同步,否则计算的时间误差较大,导致访问失败,另外如果系统没有设置清除缓存,可能会导致获取的时间是上次缓存时间,从而被拒绝访问,造成错误。
[0006]采用第二种方式,其优点为验证正确性高;其缺点为由于涉及3个系统,开发难度较大,并且每次验证都需要调用webservice接口,性能较低。

【发明内容】

[0007]本发明所要解决的技术问题是提供一种WEB系统页面集成防盗链方法及系统,能够方便快捷地解决WEB系统页面集成时出现的防盗链问题,防止同一 URL地址被多次访问。
[0008]本发明解决上述技术问题的技术方案如下:
[0009]—方面,本发明提供了一种WEB系统页面集成防盗链方法,所述方法包括:
[0010]S1、源系统WEB服务器获取预定的业务参数以及生成唯一验证值,并对所述业务参数和唯一验证值按照预定规则进行拼接,得到拼接后的字符串;
[0011]S2、按照预定的加密算法对所述拼接后的字符串进行加密,获得加密后的字符串;
[0012]S3、将携带有所述加密后的字符串的目标系统页面URL地址发送给目标系统WEB服务器,发起集成请求;
[0013]S4、目标系统WEB服务器接收到所述携带有加密后的字符串的目标系统页面URL地址,对其进行解密,得到解密后的业务参数和唯一验证值;
[0014]S5、将所述得到的唯一验证值在预定的数据库中进行查找;
[0015]S6、根据查找结果,允许源系统页面根据所述业务参数集成目标系统页面或者拒绝源系统页面集成目标系统页面。
[0016]另一方面,本发明提供了一种WEB系统页面集成防盗链系统,所述系统包括:
[0017]系统WEB服务器和目标WEB服务器;
[0018]所述源系统WEB服务器包括:
[0019]业务参数获取模块,用于获取预定业务参数;
[0020]唯一验证值生成模块,用于生成唯一验证值;
[0021]拼接模块,用于将所述获取的预定业务参数和所述生成的唯一验证值按照预定规则进行拼接,得到拼接后的字符串;
[0022]加密模块,用于按照预定的加密算法对所述拼接后的字符串进行加密,获得加密后的字符串;
[0023]集成请求发起模块,用于将携带有所述加密后的字符串的目标系统页面URL地址发送给目标系统WEB服务器,发起集成请求;
[0024]所述目标系统WEB服务器包括:
[0025]接收模块,用于接收所述携带有加密后的字符串的目标系统页面URL地址;
[0026]解密模块,用于对所述接收到的携带有加密后的字符串的目标系统页面URL地址进行解密,获得解密后的业务参数和唯一验证值;
[0027]查找模块,用于将所述得到的唯一验证值在预定的数据库中进行查找;
[0028]允许/拒绝访问模块,用于允许源系统页面根据所述业务参数集成目标系统页面或者拒绝源系统页面集成目标系统页面。
[0029]本发明提供的一种WEB系统页面集成防盗链方法及系统,源系统WEB服务器将携带有唯一验证值的URL地址发送给目标系统WEB服务器,目标系统WEB服务器对唯一验证值进行验证,根据验证结果决定先允许或拒绝源系统页面集成目标系统界面,解决了页面集成过程中的盗链问题;在对唯一验证值的过程中只涉及到两个系统,开发难度小,执行的效率也高;另外,源系统WEB服务器对唯一验证值进行加密,防止唯一验证值被偷窥的问题,提高了传输过程的安全性。
【附图说明】
[0030]图1为本发明实施例1的一种WEB系统页面集成防盗链方法流程图;
[0031]图2为本发明实施例1的整个实现过程流程图;
[0032]图3为本发明实施I中目标系统WEB服务器对唯一验证值验证的过程示意图;
[0033]图4为本发明实施例2的一种WEB系统页面集成防盗链系统示意图。
【具体实施方式】
[0034]以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
[0035]实施例1、一种WEB系统页面集成防盗链方法。下面结合图1-图3对本实施例提供的方法进行详细描述。
[0036]参见图1,源系统WEB服务器获取预定的业务参数以及生成唯一验证值,并对该业务参数和唯一验证值按照预定规则进行拼接,得到拼接后的字符串。
[0037]具体的,在源系统界面希望集成目标系统页面,源系统WEB服务器与目标系统WEB服务器之间具有约定的业务逻辑,因此,参见图2,首先源系统WEB服务器获取源系统WEB服务器与目标系统WEB服务器预先约定好的业务参数。另外,为了保证唯一性,源系统WEB服务器生成唯一验证值,比如,在本实施例中,源系统WEB服务器生成32位唯一验证值,其中,唯一验证值可以由时间戳参数(13位)和目标系统IP地址(12位)以及预定长度的随机数(本实施例的随机数定为7位)组合而成,通过DES-ECB加密生成32位的唯一验证值。在本实施例中,时间戳格式:‘月日时分秒微秒’,比如‘1110212029249’ ;目标系统IP地址不包含”,每一部分前面补‘O,补足3位,比如,目标系统的IP地址为“10.95.242.153”,经过格式化后为“010095242153”,随机数为随机生成的7位数字,如‘1234567’,将三部分数据拼接成为‘11102120292490100952421531234567’,通过DES-ECB加密生成32位的唯一验证值为 ‘8BD4DF510E74B29D903E68FCA1FA9FDF’。
[0038]源系统WEB服务器获取预定的业务参数以及生成了唯一验证值后,对该预定的业务参数和唯一验证值按照预定规则进行拼接,比如,将预定的业务参数和唯一验证值通过分隔符进行拼接,拼接成一个字符串,分隔符通常使用“&”,比如,^uniqueValue = 8BD4DF510E74B29D903E68FCAlFA9FDF&groupId = 10008&loginNo = aagh6m’。
[0039]S2、按照预定的加密算法对所述拼接后的字符串进行加密,获得加密后的字符串。
[0040]具体的,步骤SI将获取的业务参数和唯一验证值进行拼接后,本步骤对拼接后的字符串按照预定的加密算法进行加密,保证了数据传输过程中的安全性,以免字符串被人偷窥。在本实施例中,将预设的唯一码,比如,源系统或目标系统的工号作为密匙,该密匙由源系统WEB服务器与目标系统WEB服务器约定,并采用3DES-CBC加密算法对拼接后的字符串进行加密,形成加密后的字符串。
[0041]S3、将携带有所述加密后的字符串的目标系统页面URL地址发送给目标系统WEB服务器,发起集成请求。
[0042]具体的,步骤S2获取加密后的字符串后,源系统WEB服务器将该加密后的字符串嵌入目标系统页面URL地址中,并将该携带有加密处理后的字符串的目标系统页面URL地址发送给目标系统WEB服务器,向目标系统WEB服务器发起集成请求。
[0043]其中,本实施例源系统WEB服务器将加密后的字符串使用一个变量param来传递给目标系统WEB服务器,比如,通过“http://url ? param =加密后的字符串”的方式将携带有加密处理后的字符串的目标系统页面URL地址发送给目标系统WEB服务器。
[0044]S4、目标系统WEB服务器接收到所述携带有加密后的字符串的目标系统页面URL地址,对其进行解密,得到解密后的业务参数和唯一验证值。
[0045]具体的,目标系统WEB服务器接收到源系统WEB服务器发起的集成请求(集成请求中包括携带有加密后的字符串的目标系统页面URL地址),并获取集成请求中param的值,即前述加密后的字符串,并对获取的加密后的字符串进行解密,解密后的字符串按照分隔符(如本实施例中采用的“&”)进行分割,得到原始的业务参数和唯一验证值的键值对(即Map对象),可通过关键字获取相应的值,比如,通过‘uniqueValue’可获取唯一验证值。
[0046]S5、将所述得到的唯一验证值在预定的数据库中进行查找。
[0047]具体的,参见图3,当目标系统WEB服务器得到原始的唯一验证值后,将该唯一验证值在目标系统WEB服务器的数据库中进行查找,查找该唯一验证值是否在数据库中存在。
[0048]S5、根据查找结果,允许源系统页面根据业务参数集成目标系统页面或者拒绝源系统页面集成目标系统页面。
[0049]具体的,若在目标系统WEB服务器的数据库中查找到上述的唯一验证值,则拒绝源系统页面集成目标系统页面;若在数据库中未查找到唯一验证值,则允许源系统页面按照业务参数集成目标系统页面,并响应源系统WEB服务器的集成请求。采用该种方式对唯一验证值进行验证,当目标系统页面被集成过一次之后,拒绝再次被集成。另外,若在数据库中未查找到唯一验证值,则将该唯一验证值存储于该数据库中,作为备份,以供下一次查找之用。最后,存储于数据库中的唯一验证值具有时间戳,当唯一验证值的时间戳在超过有效时间时,则删除该唯一验证值,比如,数据库可以每天清理一个月前存储的唯一验证值,以减少存储空间。实施例2、一种WEB系统页面集成防盗链系统。下面结合图4对本实施例提供的系统进行详细说明。
[0050]图4中,本实施例提供的系统包括源系统WEB服务器100和目标系统WEB服务器200,其中,源系统WEB服务器100包括业务参数获取模块1001、唯一验证值生成模块1002、拼接模块1003、加密模块1004和
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1