验证码清除,防止多次使用。

master
RuoYi 4 years ago committed by Limy
parent 6fe167f4c1
commit 1f1dee675f

@ -61,13 +61,12 @@ public class CaptchaValidateFilter extends AccessControlFilter
{ {
Object obj = ShiroUtils.getSession().getAttribute(Constants.KAPTCHA_SESSION_KEY); Object obj = ShiroUtils.getSession().getAttribute(Constants.KAPTCHA_SESSION_KEY);
String code = String.valueOf(obj != null ? obj : ""); String code = String.valueOf(obj != null ? obj : "");
//无论验证码是否正确,凡验证过一次后都应将原值不可用,直到页面重新请求验证码,以防恶意用户持有该验证码进行针对后台发包的暴力破解 // 验证码清除,防止多次使用。
request.getSession().setAttribute(Constants.KAPTCHA_SESSION_KEY, ShiroConstants.CAPTCHA_ERROR); request.getSession().removeAttribute(Constants.KAPTCHA_SESSION_KEY);
if (StringUtils.isEmpty(validateCode) || !validateCode.equalsIgnoreCase(code)) if (StringUtils.isEmpty(validateCode) || !validateCode.equalsIgnoreCase(code))
{ {
return false; return false;
} }
return true; return true;
} }

Loading…
Cancel
Save