asp.net限制用户登录错误次数
很经常在登录一个网站的时候看到,如果你登录的时候输入的账号密码错误超过三次就被锁定,然后等一段时间才能继续登录,最最经常使用的就是银行系统啦~~
该功能处理流程如下:
string uid = Request.Form["uid"] ?? ""; //获取用户登录名
string pwd = Request.Form["pwd"] ?? ""; //获取密码
T_Users user = userNameBll.GetByUserNameBll(uid);//调用Bll,根据用户登录名查找用户
if (user == null)
{
showUidHtml = "用户名不存在!";
}
else
{
if (user.ErrorTimes >= 3 && (DateTime.Now - user.LastLoginDate).TotalMinutes < 15)//如果该用户的错误次数>=3,而且最后的出错日期<15分钟,那么锁定该用户
{
showUidHtml = "用户已锁定";
}
else<span style="white-space:pre"> </span>//用户还有继续尝试登录的机会
{
if ((DateTime.Now - user.LastLoginDate).TotalMinutes >= 15)//如果用户的最后出错日期已经>=15分钟,那么重置出错次数为0(实现15分钟之后不管有没有出错都为0,可以尝试登录)
{
user.ErrorTimes = 0;
}
if (user.Password.Trim() == pwd)//如果密码正确,重置出错次数,并记录相关信息
{
user.LoginTimes++;
user.ErrorTimes = 0;
user.LastLoginDate = DateTime.Now;
userBll.Update(user);
Session["User"] = user;
}
else//如果密码错误,出错次数++,并记录最后出错的日期,更新到数据库
{
user.ErrorTimes++;
user.LastLoginDate = DateTime.Now;
if (userBll.Update(user))
{
showPwdHtml = "用户名或密码错误!";
}
}
}
}
完成~
asp.net限制用户登录错误次数的更多相关文章
- ASP.NET MVC 用户登录Login
ASP.NET MVC 用户登录Login一.先来看个框架例子:(这个是网上收集到的) 第一步:创建一个类库ClassLibrary831. 第二步:编写一个类实现IHttpM ...
- ASP.NET MVC用户登录(Memcache存储用户登录信息)
一.多站点共享用户信息解决方案: 采用分布式缓存Memcache模拟Session进行用户信息信息共享 1.视图部分
- EHCACHE实现登录错误次数账号锁定
使用EHCACHE实现账号密码登录校验失败5次锁定10分钟 <?xml version="1.0" encoding="UTF-8"?> <e ...
- Spring Security笔记:登录尝试次数限制
今天在前面一节的基础之上,再增加一点新内容,默认情况下Spring Security不会对登录错误的尝试次数做限制,也就是说允许暴力尝试,这显然不够安全,下面的内容将带着大家一起学习如何限制登录尝试次 ...
- Redis限制在规定时间范围内登陆错误次数限制
在博客里之前有过一篇文章是 <PHP结合Redis来限制用户或者IP某个时间段内访问的次数>,这篇文章的思路也是一样的.看下代码吧 //登录错误次数校验 $key = "logi ...
- s12-day01-work01用户登录接口
README # README.md # day001-work-1 @南非波波 功能实现:登录接口 流程图:  程序实现: 1. ...
- Servlet+jsp用户登录加上验证码
最近公司有个项目被客户拿去进行漏洞扫描,发现用户登录太简单,容易被暴力破解.当然发现的问题很多,什么反射型XSS,存储型XSS,敏感信息泄露等等.但是我们今天不讲这么多,就说说如何修复暴力破解的问题. ...
- 查看Linux系统用户登录日志
日志: /var/log/wtmp说明: 此文件是二进制文件,查看方法如下:该日志文件永久记录每个用户登录.注销及系统的启动.停机的事件.因此随着系统正常运行时间的增加,该文件的大小也会越来越大,增加 ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(15)-用户登录详细错误和权限数据库模型设计
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(15)-用户登录详细错误和权限数据库模型设计 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) ...
随机推荐
- ZOJ 1280 Interesting Lines | 求两直线交点
原题: 求两直线交点 思路借鉴于:http://blog.csdn.net/zxy_snow/article/details/6341282 感谢大佬 #include<cstdio> # ...
- 【CF Round 429 B. Godsend】
time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standa ...
- vue的main.js
import Vue from 'vue'; import App from './App.vue'; //================http 请求======================= ...
- 【IDEA】IDEA中部署的项目添加Tomcat自带的一些项目
在IDEA部署项目的时候发现没有tomcat自带的一些项目,有时候我们需要tomcat自带的项目查看一些配置的信息,经过查阅资料后做记录如下: 1.在Eclipse中点击Run ->Edit C ...
- gdb 脚本
不满足于一条一条执行命令,我们可以将命令写进脚本里面,连续执行, 1: gdb启动会在当前目录寻找.gdbinit文件,并读取里面的命令列表 2: 我们可以启动gdb 时,加-x cmd.gdb 来指 ...
- (转)MSI - Enable MSI Logging
转自: http://www.cnblogs.com/atempcode/archive/2007/04/10/707917.html 安装MSI安装包的时候, 有时会遇到错误, 这时LOG文件就非常 ...
- Video for Linux Two API Specification Revision 2.6.32【转】
转自:https://www.linuxtv.org/downloads/legacy/video4linux/API/V4L2_API/spec-single/v4l2.html Video for ...
- linux 内核库函数 【转】
转自:http://blog.chinaunix.net/uid-20321537-id-1966892.html 当编写驱动程序时,一般情况下不能使用C标准库的函数.Linux内核也提供了与标准库函 ...
- 在windows系统上word转pdf
一.前言:我在做文件转换过程中遇到的一些坑,在这里记录下,因为项目需求,需要使用html转pdf,由于itext转换质量问题(一些Css属性不起作用),导致只能通过word文件作为跳板来转换到pdf文 ...
- qt include无法自动补齐
原因一: 检查cmake有没有include_directories 原因二: CmakeList.txt放错位置 原因三: 没有用qt new file来创建头文件