在Java Web中的入侵检测及简单实现
http://tech.ddvip.com 2008年04月16日 社区交流
内容摘要:在Java Web应用程中,特别是网站开发中,我们有时候需要为应用程序增加一个入侵检测程序来防止恶意刷新的功能,防止非法用户不断的往Web应用中重复发送数据。
EasyJWeb框架友情提示!:-):
您对页面的刷新太快,请等待60秒后再刷新页面!
详细请查询http://www.easyjf.com
二、用户访问信息记录UserConnect.java类
这个类是一个简单的Java Bean,主要代表用户的信息,包括用户名、IP、第一次访问时间、最后登录时间、登录次数、用户状态等。全部
代码如下:
package com.easyjf.web;
import java.util.Date;
/**
*
*
Title:用户验证信息
*
Description:记录用户登录信息,判断用户登录情况
*
Copyright: Copyright (c) 2006
*
Company: www.easyjf.com
* @author 蔡世友
* @version 1.0
*/
public class UserConnect {
private String userName;
private String ip;
private Date firstFailureTime;
private Date lastLoginTime;
private int failureTimes;//用户登录失败次数
private int status=0;//用户状态0表示正常,-1表示锁定
public int getFailureTimes() {
return failureTimes;
}
public void setFailureTimes(int failureTimes) {
this.failureTimes = failureTimes;
}
public Date getFirstFailureTime() {
return firstFailureTime;
}
public void setFirstFailureTime(Date firstFailureTime) {
this.firstFailureTime = firstFailureTime;
}
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
public Date getLastLoginTime() {
return lastLoginTime;
}
public void setLastLoginTime(Date lastLoginTime) {
this.lastLoginTime = lastLoginTime;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
}
三、监控线程UserConnectManage.java类
这是入侵检测的核心部分,主要实现具体的入侵检测、记录、判断用户信息、在线用户的刷新等功能,并提供其它应用程序使用本组件的调用接口。
作者:空军1号 责编:豆豆技术应用