CN104753919B - 一种基于Java的消息准入控制的方法及系统 - Google Patents
一种基于Java的消息准入控制的方法及系统 Download PDFInfo
- Publication number
- CN104753919B CN104753919B CN201510075144.8A CN201510075144A CN104753919B CN 104753919 B CN104753919 B CN 104753919B CN 201510075144 A CN201510075144 A CN 201510075144A CN 104753919 B CN104753919 B CN 104753919B
- Authority
- CN
- China
- Prior art keywords
- solicited message
- verifying
- message
- server
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种基于Java的消息准入控制的方法,应用方向服务器发送请求信息,服务器对应用方信息进行验证,应用方通过验证后,服务器对其发送的请求信息进行验证;请求信息通过验证后,将请求信息提交至tomcat容器,并对请求信息进行过滤,获取请求信息中的有效字符串,并发送一返回信息至应用方,本发明还提供一种基于Java的消息准入控制的系统,能够有效的控制请求信息,保证网络的安全。
Description
技术领域
本发明涉及一种基于Java的消息准入控制的方法及系统。
背景技术
在内网之间数据传输的时候,大部分的企业都并未进行一些限制,导致企业的内部信息泄露;有的企业进行了一些限制,但只是一些简单的限制,存在着许多漏洞,使得不法分子通过这些漏洞获取该企业的一些机密信息,缺少对于应用方必要的监控;在J2EE中,TOMCAT是轻量级的Web容器,无法满足复杂业务场景的要求;J2EE规范中的标准容器是webcontainer和EJB containor;另外还要提供诸如JNDI、JMS、JDBC、JMAIL等等的服务,把这些都省略了,要想满足这些功能必须带另外的开源框架产品;并且缺少更多的监控功能和接口;运行状态(runtime)的统计数据不多,展示界面不好,其性能稍差,不能支持session复制这样的高级功能。
发明内容
本发明要解决的技术问题,在于提供一种基于Java的消息准入控制的方法及系统,能够有效的控制请求信息,保证网络的安全。
本发明之一是这样实现的:一种基于Java的消息准入控制的方法,包括如下步骤:
步骤1、应用方向服务器发送请求信息,服务器对应用方信息进行验证;
步骤2、应用方通过验证后,服务器对其发送的请求信息进行验证;
步骤3、请求信息通过验证后,将请求信息提交至tomcat容器,并对请求信息进行过滤,获取请求信息中的有效字符串,并发送一返回信息至应用方。
进一步地,所述步骤1中服务器对应用方信息进行验证包括:服务器对应用方的ip验证、应用方同一请求信息发送次数验证及应用方发送请求信息间隔时间验证。
进一步地,所述步骤2中服务器对其发送的请求信息进行验证包括:服务器对请求信息的消息头验证、请求信息的字符编码格式验证及请求信息的格式验证。
进一步地,所述步骤3进一步具体为:请求信息通过验证后,将请求信息提交至tomcat容器,经过filterDispatcher过滤,将过滤后的请求信息转发给ActionProxy,从过滤后的请求信息中获取表示请求的字符串,提交给ActionInvocation进行解析;根据解析的字符串找到对应的action映射节点;在执行execute之前,查看action映射节点周围是否有拦截器引用,若有,则按照引用的顺序逐个执行,之后执行execute方法进行业务逻辑处理,否则直接执行execute方法进行业务逻辑处理;处理完毕之后,根据方法的返回值,在action映射节点下查找对应的result节点,根据该result节点返回一返回信息给应用方。
本发明之二是这样实现的:一种基于Java的消息准入控制的系统,包括如下模块:
应用方验证模块,应用方向服务器发送请求信息,服务器对应用方信息进行验证;
信息验证模块,应用方通过验证后,服务器对其发送的请求信息进行验证;
解析信息回馈模块,请求信息通过验证后,将请求信息提交至tomcat容器,并对请求信息进行过滤,获取请求信息中的有效字符串,并发送一返回信息至应用方。
进一步地,所述应用方验证模块中服务器对应用方信息进行验证包括:服务器对应用方的ip验证、应用方同一请求信息发送次数验证及应用方发送请求信息间隔时间验证。
进一步地,所述信息验证模块中服务器对其发送的请求信息进行验证包括:服务器对请求信息的消息头验证、请求信息的字符编码格式验证及请求信息的格式验证。
进一步地,所述解析信息回馈模块进一步具体为:请求信息通过验证后,将请求信息提交至tomcat容器,经过filterDispatcher过滤,将过滤后的请求信息转发给ActionProxy,从过滤后的请求信息中获取表示请求的字符串,提交给ActionInvocation进行解析;根据解析的字符串找到对应的action映射节点;在执行execute之前,查看action映射节点周围是否有拦截器引用,若有,则按照引用的顺序逐个执行,之后执行execute方法进行业务逻辑处理,否则直接执行execute方法进行业务逻辑处理;处理完毕之后,根据方法的返回值,在action映射节点下查找对应的result节点,根据该result节点返回一返回信息给应用方。
本发明具有如下优点:本发明一种基于Java的消息准入控制的方法及系统,要求应用方在享受网络服务前达到一定的安全要求,尽量避免单个应用方的网络安全隐患对整个系统构成威胁。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明方法执行流程图。
具体实施方式
如图1所示,本发明基于Java的消息准入控制的方法,包括如下步骤:
步骤1、应用方向服务器发送请求信息,服务器对应用方信息进行验证,所述服务器对应用方信息进行验证包括:服务器对应用方的ip验证、应用方同一请求信息发送次数验证及应用方发送请求信息间隔时间验证;
步骤2、应用方通过验证后,服务器对其发送的请求信息进行验证,所述服务器对其发送的请求信息进行验证包括:服务器对请求信息的消息头验证、请求信息的字符编码格式验证及请求信息的格式验证;
步骤3、请求信息通过验证后,将请求信息提交至tomcat容器,经过filterDispatcher过滤,将过滤后的请求信息转发给ActionProxy,从过滤后的请求信息中获取表示请求的字符串,提交给ActionInvocation进行解析;根据解析的字符串找到对应的action映射节点;在执行execute之前,查看action映射节点周围是否有拦截器引用,若有,则按照引用的顺序逐个执行,之后执行execute方法进行业务逻辑处理,否则直接执行execute方法进行业务逻辑处理;处理完毕之后,根据方法的返回值,在action映射节点下查找对应的result节点,根据该result节点返回一返回信息给应用方。
本发明基于Java的消息准入控制的系统,包括如下模块:
应用方验证模块,应用方向服务器发送请求信息,服务器对应用方信息进行验证,所述服务器对应用方信息进行验证包括:服务器对应用方的ip验证、应用方同一请求信息发送次数验证及应用方发送请求信息间隔时间验证;
信息验证模块,应用方通过验证后,服务器对其发送的请求信息进行验证,所述服务器对其发送的请求信息进行验证包括:服务器对请求信息的消息头验证、请求信息的字符编码格式验证及请求信息的格式验证;
解析信息回馈模块,所述解析信息回馈模块进一步具体为:请求信息通过验证后,将请求信息提交至tomcat容器,经过filterDispatcher过滤,将过滤后的请求信息转发给ActionProxy,从过滤后的请求信息中获取表示请求的字符串,提交给ActionInvocation进行解析;根据解析的字符串找到对应的action映射节点;在执行execute之前,查看action映射节点周围是否有拦截器引用,若有,则按照引用的顺序逐个执行,之后执行execute方法进行业务逻辑处理,否则直接执行execute方法进行业务逻辑处理;处理完毕之后,根据方法的返回值,在action映射节点下查找对应的result节点,根据该result节点返回一返回信息给应用方。
一种具体具体实施方式如下:
【1】ip验证:当消息传入到服务端进行ip验证,没有授权的ip被拦截不让通过。
【2】次数验证:当同一个消息传到服务端的次数进行验证如果超过指定的次数时消息被拦截下来。
【3】时间验证:当消息传到服务端的时间都会与上一次的时间进行比较如果小于指定的间隔时间时消息被拦截下来。
【4】消息的头验证:当消息传入服务端时消息头携带的MD5加密过的参数都会被验证,如若验证不通过则消息被拦截下来。
【5】字符编码验证:当消息传入服务端时消息的字符编码进行验证如果不是utf-8字符,消息将被拦截下来。
【6】消息体验证:当消息传入服务端时消息体内容将被验证,如果消息体的格式不符合要求的格式,消息将被拦截下来。
【7】验证信息写好后部署在tomcat容器当中进行启动。
【8】使用Matlab对参数自整定的PID控制器进行了有效性验证。使用Java语言实现了参数自整定的PID控制算法,然后以Tomcat为实验对象,通过修改Tomcat源码将参数自整定的PID控制算法植入Tomcat服务器,使用ApacheBench模拟用户发送请求进行Web服务准入控制的仿真实验,采集的实验数据显示PID控制器应用于Web服务准入控制具有较好效果。
【9】容器启动,加载web.xml,初始化FilterDispatcher(核心控制器),加载default.properties文件(即配置文件),根据struts.configration.files加载struts的三种配置文件。
【10】应用方将请求提交到web容器,被filterDispatcher过滤到,将请求转发给ActionProxy,获取表示请求的字符串,提交给ActionInvocation;根据解析的字符串找到对应的action映射节点,实例化class属性指定的业务逻辑Action;在执行execute之前,查看action周围是否有拦截器引用,如果有,按照引用的顺序逐个执行;执行execute方法进行业务逻辑处理;处理完毕之后,根据方法的返回值,在action节点下查找对应的result节点,返回匹配的视图给应用方。
【11】用Handler Interceptor拦截请求,Servlet API定义的Servlet过滤器可以在Servlet处理每个web请求的前后分别对它进行前置处理和后置处理。你想要在Spring的web应用程序上下文中配置一些类似于过滤器的东西,以使能够利用容器特性。此外,有些时候,你可能只想处理由某些SpringMVC处理程序处理的Web请求,并在这些处理程序返回的模型属性被传递到视图之前,对它们进行一些操作。
【12】Spring MVC允许你通过处理拦截拦截web请求,进行前置处理和后置处理。处理拦截是在Spring的web应用程序上下文中配置的,因此它们可以利用各种容器特性,并引用容器中声明的任何Bean。处理拦截是针对特殊的处理程序映射进行注册的,因此它只拦截通过这些处理程序映射的请求。每个处理拦截都必须实现HandlerInterceptor接口,它包含三个需要你实现的回调方法:preHandle(),postHandle()和afterCompletion()。第一个和第二个方法分别是在处理程序处理请求之前和之后被调用的。第二个方法还允许访问返回的ModelAndView对象,因此可以在它里面操作模型属性。最后一个方法是在所有请求处理完成之后被调用的.
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (4)
1.一种基于Java的消息准入控制的方法,其特征在于:包括如下步骤:
步骤1、应用方向服务器发送请求信息,服务器对应用方信息进行验证,所述服务器对应用方信息进行验证包括:服务器对应用方的ip验证、应用方同一请求信息发送次数验证及应用方发送请求信息间隔时间验证;
步骤2、应用方通过验证后,服务器对其发送的请求信息进行验证;
步骤3、请求信息通过验证后,将请求信息提交至tomcat容器,并对请求信息进行过滤,获取请求信息中的有效字符串,并发送一返回信息至应用方。
2.根据权利要求1所述的一种基于Java的消息准入控制的方法,其特征在于:所述步骤2中服务器对其发送的请求信息进行验证包括:服务器对请求信息的消息头验证、请求信息的字符编码格式验证及请求信息的格式验证。
3.一种基于Java的消息准入控制的系统,其特征在于:包括如下模块:
应用方验证模块,应用方向服务器发送请求信息,服务器对应用方信息进行验证,所述服务器对应用方信息进行验证包括:服务器对应用方的ip验证、应用方同一请求信息发送次数验证及应用方发送请求信息间隔时间验证;
信息验证模块,应用方通过验证后,服务器对其发送的请求信息进行验证;
解析信息回馈模块,请求信息通过验证后,将请求信息提交至tomcat容器,并对请求信息进行过滤,获取请求信息中的有效字符串,并发送一返回信息至应用方。
4.根据权利要求3所述的一种基于Java的消息准入控制的系统,其特征在于:所述信息验证模块中服务器对其发送的请求信息进行验证包括:服务器对请求信息的消息头验证、请求信息的字符编码格式验证及请求信息的格式验证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510075144.8A CN104753919B (zh) | 2015-02-12 | 2015-02-12 | 一种基于Java的消息准入控制的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510075144.8A CN104753919B (zh) | 2015-02-12 | 2015-02-12 | 一种基于Java的消息准入控制的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104753919A CN104753919A (zh) | 2015-07-01 |
CN104753919B true CN104753919B (zh) | 2019-06-07 |
Family
ID=53593023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510075144.8A Active CN104753919B (zh) | 2015-02-12 | 2015-02-12 | 一种基于Java的消息准入控制的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104753919B (zh) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103501344B (zh) * | 2013-10-10 | 2017-08-01 | 瑞典爱立信有限公司 | 多应用实现单点登录的方法及系统 |
-
2015
- 2015-02-12 CN CN201510075144.8A patent/CN104753919B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN104753919A (zh) | 2015-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3574625B1 (de) | Verfahren zum durchführen einer authentifizierung | |
US7437362B1 (en) | System and methods for nonintrusive database security | |
US20070300306A1 (en) | Method and system for providing granular data access control for server-client applications | |
CN109309683A (zh) | 基于token的客户端身份验证的方法及系统 | |
CN105337990B (zh) | 用户身份的校验方法及装置 | |
EP3139548A1 (en) | High assurance segregated gateway interconnecting different domains | |
Bates et al. | Transparent web service auditing via network provenance functions | |
CN104954346B (zh) | 基于对象分析的攻击识别方法及装置 | |
CN109388631A (zh) | 一种多租户的数据库分库实现方法 | |
CN109446833A (zh) | 一种基于教育系统的权限校验方法及电子设备 | |
US20150101057A1 (en) | Network service interface analysis | |
US8959629B2 (en) | Preserving web document integrity through web template learning | |
CN107172081A (zh) | 一种数据校验的方法和装置 | |
DE102017221889A1 (de) | Datenverarbeitungseinrichtung, Gesamtvorrichtung und Verfahren zum Betrieb einer Datenverarbeitungseinrichtung oder Gesamtvorrichtung | |
CN107992771A (zh) | 一种数据脱敏方法和装置 | |
CN106302497A (zh) | 微服务的权限控制方法及装置 | |
Pferscher et al. | Fingerprinting Bluetooth Low Energy devices via active automata learning | |
US8666731B2 (en) | Method, a computer program and apparatus for processing a computer message | |
EP4070183A1 (en) | Behavior-based comparison of software | |
CN109688162B (zh) | 一种多租户的数据分库实现方法和系统 | |
CN104753919B (zh) | 一种基于Java的消息准入控制的方法及系统 | |
Pfaff | Rfc 7047: The open vswitch database management protocol | |
CN114024904B (zh) | 访问控制方法、装置、设备及存储介质 | |
DE102010004786A1 (de) | Verfahren zum rechnergestützten Bereitstellen einer Entwicklungsumgebung zur Implementierung von Sicherheitsanwendungen in einer Fahrzeug-Architektur | |
CN106470132B (zh) | 水平权限测试方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |