登录安全问题策略

用户登录界面

登录安全问题策略

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

三次输入错误,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,感觉不好,但标签怎么写又没查到,只晓得标签可以读,希望可以指点

欢迎大家提供想法

你可能感兴趣的:(jsp,Web,struts,浏览器,ITeye)