一种基于Web服务器中间件的自动验证方法与流程

文档序号:12789508阅读:442来源:国知局

本发明涉及自动签名和验签的方法,特别涉及一种基于Web服务器中间件自动增加客户端签名和服务端验签的自动验证方法。



背景技术:

随着计算机网络和Internet的迅速普及,如今Web应用服务已经成为非常流行的网络服务,而且Web网站的内容已经涉及到现实世界的方方面面,因此Web网站已经成为互联网最重要的资源之一。

Cookies是一种能够让Web服务器把少量数据储存到客户端的硬盘或内存,或是从客户端的硬盘读取数据的一种技术。Cookies是当用户浏览某网站时,由Web服务器置于硬盘上的一个非常小的文本文件,它可以记录用户的ID、密码、浏览过的网页、停留的时间等信息。

现有有很多Web网站为了方便网友浏览,都使用了Cookie技术以避免多次输入密码,所以只要对服务器递交给用户的Cookie进行改写就可以达到欺骗服务程序的目的。

与此同时,在Web网站的操作也面临着巨大的安全威胁,各种各样的攻击方式,如SQL注入、上传漏洞、Cookies欺骗等,扰乱了无数正常网站的运行,给Web网站甚至是社会带来了巨大的经济损失和不利的政治影响。

在众多攻击方式中的Cookies欺骗,是在只对用户做Cookies验证的系统中,通过修改Cookies的内容来得到相应的用户权限登录,这样就大大降低了Web操作的安全性。

为此,申请人进行了有益的探索和尝试,找到了解决上述问题的办法, 下面将要介绍的技术方案便是在这种背景下产生的。



技术实现要素:

本发明所要解决的技术问题:针对现有技术的不足而提供一种基于Web服务器中间件的自动验证方法,该自动验证方法基于Web服务器中间件,通过自动增加客户端的签名和服务端验证,保证Web操作的安全性。

本发明所解决的技术问题可以采用以下技术方案来实现:

一种基于Web服务器中间件的自动验证方法,所述自动验证方法包括:

Web服务器内设置有一个Filter,Web服务器的Filter对浏览器提交的访问请求进行处理并返回Response给浏览器;

浏览器接收Web服务器响应的Response后,在触发form表单的submit动作时,进行签名操作;以及

Web服务器的Filter对浏览器提交的form表单内容进行验证操作。

在本发明的一个优选实施例中,其中Web服务器的Filter对浏览器提交的访问请求进行处理的步骤包括:

Web服务器的Filter产生一个随机数并关联至Session中;以及

在Response中插入一段JS,所述JS替换原生的form表单的submit方法;

在本发明的一个优选实施例中,在触发form表单的submit动作时进行签名操作的步骤包括:

在触发form表单的submit动作时,自动调用所述JS的方法;

浏览器对所述随机数和form表单内容进行签名,并将签名结果增加至form表单内;以及

浏览器执行form表单的submit动作,将签名后的随机数和form表单内容提交至Web服务器。

在本发明的一个优选实施例中,所述JS包含有所述证书的选择条件。

在本发明的一个优选实施例中,其中浏览器对所述随机数和form表单内容进行签名的步骤为:所述浏览器基于Windows的COMAPI控件选择合适的证书对所述随机数和form表单内容进行签名。

在本发明的一个优选实施例中,其中浏览器对所述随机数和form表单内容进行签名的步骤为:所述浏览器为IE浏览器,该IE浏览器直接基于CAPICOM组件的SignedData方法对所述随机数和form表单内容进行签名。

在本发明的一个优选实施例中,其中Web服务器的Filter对浏览器提交的form表单内容进行验证操作的步骤包括以下步骤:

Web服务器检查form表单内容是否有签名的步骤;

Web服务器对form表单内容的签名进行验证操作的步骤;以及

Web服务器获取签名中的随机数,并检查该随机数是否与Session中的随机数是否一致的步骤。

在本发明的一个优选实施例中,Web服务器根据预先在服务器配置的规则,对某些重要的页面才实现自动签名机制。

由于采用了如上的技术方案,本发明的有益效果在于:浏览器提交的Web访问请求进入Web服务器处理前自动进行验签,有效地提高了Web操作的安全性,防止Cookies欺骗影响到Web操作的安全性能。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明的基于Web服务器中间件的自动验证方法的流程图。

具体实施方式

为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。

参见图1,图中给出的是一种基于Web服务器中间件的自动验证方法,包括以下步骤:

步骤1),浏览器向Web服务器发送访问请求;

步骤2),Web服务器内设置有一个Filter,比如Tomcat的Filter,Web服务器内的Filter处理步骤1)中由浏览器发送来的访问请求;

步骤3),Web服务器的Filter产生一个随机数并关联至Session中,在Response中插入一段JS,所述JS替换原生的form表单的submit方法,并通过Set-Cookies方法返回给浏览器;

步骤4),浏览器接收步骤3)中由Web服务器响应的Response后,在触发form表单的submit动作时,自动调用所述JS的方法;

步骤5),浏览器基于Windows的COMAPI控件选择合适的证书对所述随机数和form表单内容进行签名,并将签名结果增加至form表单内,又或者,浏览器为IE浏览器,IE浏览器直接基于CAPICOM组件的SignedData方法实施签名,并将签名结果增加至form表单内;浏览器执行form表单的submit动作,将签名后的随机数和form表单内容通过http的PostMethod方法提交至Web服务器;

步骤6),Web服务器检查form表单内容是否有签名,若有签名,则进入步骤7),若无签名,则返回步骤1);

步骤7),Web服务器对form表单内容的签名进行验证,若通过验证,则进入步骤8),若不能通过验证,则返回步骤1);

步骤8),Web服务器获取签名中的随机数,并检查该随机数是否与 Session中的随机数一致,若检查为一致,则允许浏览器访问Web服务器,若检查为不一致,则返回步骤1);

步骤9),结束本次自动验证处理。

在本实施例中,在步骤3)中,所述JS包含有所述证书的选择条件。

在本实施例中,Web服务器根据预先在服务器配置的规则,对某些重要的页面才实现自动签名机制。

以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1