資源簡介
shiro+redis 實現登錄控制及密碼重試次數超過5次后賬號鎖定一分鐘不能登錄
代碼片段和文件信息
package?cn.com.Controller;
import?cn.com.Service.RedisSaveManageService;
import?lombok.extern.slf4j.Slf4j;
import?org.apache.shiro.SecurityUtils;
import?org.apache.shiro.authc.*;
import?org.apache.shiro.subject.Subject;
import?org.springframework.beans.factory.annotation.Autowired;
import?org.springframework.stereotype.Controller;
import?org.springframework.web.bind.annotation.RequestMapping;
import?javax.servlet.http.HttpServletRequest;
/**
?*?Created?by?luokun?on?2018/3/15.
?*/
@Controller
@Slf4j
public?class?ShiroAction?{
????@Autowired
????private?RedisSaveManageService?redisSaveManageService;
????@RequestMapping(“/logins“)
????public?String?logins()?{
????????return?“login“;
????}
????@RequestMapping(“/login“)
????public?String?login(HttpServletRequest?request)?throws?Exception?{
????????String?name?=?request.getParameter(“name“);
????????String?password?=?request.getParameter(“password“);
????????Integer?account=??redisSaveManageService.get(name);
????????if(account>5){
????????????return?“error“;
????????}
????????log.info(“account:“+account.toString());
????????UsernamePasswordToken?token?=?new?UsernamePasswordToken(name?password);
????????Subject?currentUser?=?SecurityUtils.getSubject();
????????try?{
????????????if?(!currentUser.isAuthenticated())?{
????????????????currentUser.login(token);
????????????????if(redisSaveManageService.get(name)!=0)?{
????????????????????redisSaveManageService.del(name);
????????????????}
????????????????return?“welcome“;
????????????}
????????}catch?(UnknownAccountException?e){
????????????log.info(“用戶“+name+“不存在“);
????????}catch?(AuthenticationException?e)?{
????????????????redisSaveManageService.increment(name?100);
????????}
????????return?“login“;
????}
????@RequestMapping(“/shiro/welcome“)
????public?String?Welcome(HttpServletRequest?request)?{
????????return?“welcome“;
????}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????????9??2018-03-14?17:19??SSM-Shiro\.idea\.name
?????文件????????289??2018-03-14?17:39??SSM-Shiro\.idea\artifacts\SSM_Shiro_war.xm
?????文件???????5266??2018-03-16?12:16??SSM-Shiro\.idea\artifacts\SSM_Shiro_war_exploded.xm
?????文件???????1183??2018-03-16?10:12??SSM-Shiro\.idea\compiler.xm
?????文件?????????76??2018-03-14?17:19??SSM-Shiro\.idea\copyright\profiles_settings.xm
?????文件????????238??2018-03-14?17:19??SSM-Shiro\.idea\encodings.xm
?????文件????????241??2018-03-14?17:19??SSM-Shiro\.idea\inspectionProfiles\profiles_settings.xm
?????文件????????947??2018-03-16?10:20??SSM-Shiro\.idea\inspectionProfiles\Project_Default.xm
?????文件????????514??2018-03-14?17:39??SSM-Shiro\.idea\libraries\Maven__aopalliance_aopalliance_1_0.xm
?????文件????????594??2018-03-14?17:42??SSM-Shiro\.idea\libraries\Maven__commons_beanutils_commons_beanutils_1_8_3.xm
?????文件????????525??2018-03-14?17:39??SSM-Shiro\.idea\libraries\Maven__commons_dbcp_commons_dbcp_1_4.xm
?????文件????????503??2018-03-14?17:39??SSM-Shiro\.idea\libraries\Maven__commons_io_commons_io_2_2.xm
?????文件????????525??2018-03-14?17:39??SSM-Shiro\.idea\libraries\Maven__commons_lang_commons_lang_2_4.xm
?????文件????????572??2018-03-14?17:39??SSM-Shiro\.idea\libraries\Maven__commons_logging_commons_logging_1_1_1.xm
?????文件????????539??2018-03-14?17:39??SSM-Shiro\.idea\libraries\Maven__commons_pool_commons_pool_1_5_4.xm
?????文件????????514??2018-03-16?12:16??SSM-Shiro\.idea\libraries\Maven__com_alibaba_fastjson_1_2_12.xm
?????文件????????462??2018-03-16?12:16??SSM-Shiro\.idea\libraries\Maven__dom4j_dom4j_1_6_1.xm
?????文件????????473??2018-03-15?09:57??SSM-Shiro\.idea\libraries\Maven__javax_servlet_jstl_1_2.xm
?????文件????????522??2018-03-14?17:39??SSM-Shiro\.idea\libraries\Maven__javax_servlet_servlet_api_2_5.xm
?????文件????????455??2018-03-16?12:16??SSM-Shiro\.idea\libraries\Maven__junit_junit_4_12.xm
?????文件????????469??2018-03-14?17:39??SSM-Shiro\.idea\libraries\Maven__log4j_log4j_1_2_17.xm
?????文件????????574??2018-03-15?09:55??SSM-Shiro\.idea\libraries\Maven__mysql_mysql_connector_java_5_1_34.xm
?????文件????????547??2018-03-16?10:52??SSM-Shiro\.idea\libraries\Maven__net_sf_ehcache_ehcache_core_2_0_0.xm
?????文件????????570??2018-03-16?12:09??SSM-Shiro\.idea\libraries\Maven__org_apache_commons_commons_pool2_2_4_2.xm
?????文件????????541??2018-03-14?17:48??SSM-Shiro\.idea\libraries\Maven__org_apache_shiro_shiro_core_1_2_1.xm
?????文件????????555??2018-03-14?17:48??SSM-Shiro\.idea\libraries\Maven__org_apache_shiro_shiro_spring_1_2_1.xm
?????文件????????534??2018-03-14?17:48??SSM-Shiro\.idea\libraries\Maven__org_apache_shiro_shiro_web_1_2_1.xm
?????文件????????542??2018-03-14?17:39??SSM-Shiro\.idea\libraries\Maven__org_aspectj_aspectjweaver_1_7_4.xm
?????文件????????532??2018-03-16?12:16??SSM-Shiro\.idea\libraries\Maven__org_hamcrest_hamcrest_core_1_3.xm
?????文件????????500??2018-03-14?17:39??SSM-Shiro\.idea\libraries\Maven__org_mybatis_mybatis_3_2_1.xm
............此處省略207個文件信息
評論
共有 條評論