当前位置:首页 » JavaScript技术

登录安全问题策略

2011-04-22 14:05 本站整理 浏览(4)

用户登录界面

客户感觉每次都要输入验证码不爽,那么你会怎么做?

三次输入错误,24小时内都要验证码

我知道的三种解决方法:

cookie

session

数据库表记录

三种存储方式,数据库最安全,还可以判断下对方的ip,根据对方ip存储,可是我们项目是门户型网站,这个用户量是很大的。

cookie--相对还好,防君子不防小人,如果正常用户输入三次错误,24小时内用户都要重新输入,还可以给用户一种安全的感觉,增加了用户体验

session--浏览器一关就挂掉了,好写,用户体验可能比不上cookie

我最后决定用cookie搞

项目是web是struts2写,在struts里面写个成员变量private Integer loginTimes;
Cookie cTimes = WebUtils.getCookie(ServletActionContext.getRequest(),
				loginError);
		String Times = null;
		if (cTimes != null) {
			Times = cTimes.getValue();
			loginTimes = Integer.valueOf(Times);
		}
if ( 用户不存在) {
			loginMessage = "用户名和密码不匹配,请重新输入";
			/**标志cookie是否记录错误值**/
			request.put("loginError", "error");
			if(loginTimes==null)
			loginTimes=0;
			return LOGIN_JSP;
		}
jsp里面直接写cookie,感觉不好,但标签怎么写又没查到,只晓得标签可以读,希望可以指点

欢迎大家提供想法