用户三次登陆密码错误锁定

import sys
count = 0
name_list = []
while count < 3:
    name = input("请输入用户名:")
    lock_file = open(‘name_pwd_lock.txt‘,‘r+‘)
    lock_list = lock_file.readlines()

    for lock_line in lock_list:
        lock_line = lock_line.strip(‘\n‘)
        if name == lock_line:
            sys.exit(‘用户 %s 已经被锁定,请联系管理员解锁.‘ %  name)
    user_file = open(‘name_pwd.txt‘,‘r‘)
    user_list = user_file.readlines()
    for user_line in user_list:
        (user,password) = user_line.strip(‘\n‘).split(‘|‘)
        name_list.append(user_line)
        if name == user:
            i = 0
            while i < 3:
                passwd = input(‘请输入密码:‘)
                if passwd == password:
                    print(‘欢迎 %s 登录‘ % name)
                    sys.exit()
                else:
                    if i < 2:
                        print(‘用户 %s 密码错误,请重新输入,还有 %d 次机会.‘ % (name,2 - i))
                i += 1
            else:
                lock_file.write(name + ‘\n‘)
                sys.exit(‘用户 %s 输错密码三次,用户将被锁定并退出,请联系管理员解锁.‘ % name)
        else:
            pass
    else:
        if count < 2:
            print(‘用户 %s 不存在,请重新输入,还有 %d 次机会‘ % (name,2 - count))
    count += 1
else:
    sys.exit(‘用户 %s 不存在,退出‘ % name)

lock_file.close()
user_file.close()
时间: 2024-12-17 02:35:26

用户三次登陆密码错误锁定的相关文章

linux用户密码错误锁定。

如果是终端直接登录 # vim /etc/pam.d/loginauth          required        pam_tally2.so        deny=3  unlock_time=300 even_deny_root root_unlock_time=10 时间单位是S 这个只是限制了从终端登陆,如果想限制ssh远程的话, 要改的是/etc/pam.d/sshd这个文件,添加的内容跟上面一样!

Spring Security应用开发(09)密码错误次数限制

实现登录时密码错误次数限制功能,就是在登录界面中当用户提交了错误的密码时在数据库中记录下这个错误次数,直到错误次数达到指定次数时,锁定用户账户,此时即便输入正确的密码,也不能登录. 需要完成如下工作: (1)修改用户表users的结构,增加相关字段. (2)自定义实现UserDetailsService,用于加载额外的数据字段. (3)自定义实现AuthenticationProvider,用于捕获登录成功和失败的事件. (3)修改spring-security.xml文件,配置上述(2)和(3

python3.0 模拟用户登录,三次错误锁定

# -*- coding:utf-8 -*- #需求模拟用户登录,超过三次错误锁定不允许登陆 count = 0 #realname passwd Real_Username = "test" Real_Password = "test" #读取黑名单的内容 f = open('black_user','r') lock_file = f.read() f.close() Username = input('请输入用户名:') #判断输入用户是否在黑名单内,如果在则

Python学习之路3?简单的用户三次输入三次错误锁定

#_*_coding:utf-8_*_#!/usr/bin/env python # dic={'tom':'123','egon':'456','lxh':'111'}## count=0# while count < 3:# name=input('请输入用户名: ').strip()# passwd=input('请输入密码:').strip()# print(type(name),type(passwd))# if name in dic and passwd == dic[name]:

完成一个登陆页面。(用户名:F11;密码:123456)。要求用户输入用户 名和密码,验证是否等于正确值。如果等于告知登陆成功,程序结束;否则告 知用户名密码有误。用户三次输入不正确,告知登陆失败,程序结束 。

#include <stdio.h>#include <string.h> /*完成一个登陆页面.(用户名:F11:密码:123456).要求用户输入用户名和密码,验证是否等于正确值.如果等于告知登陆成功,程序结束:否则告知用户名密码有误.用户三次输入不正确,告知登陆失败,程序结束 .*/ void main(){ char username[20]; char password[20]; int i = 0; for(i = 0; i < 3; i++) { printf(

单个用户OWA登陆失败,提示用户名和密码错误

用户向管理员反映他无法登陆OWA,提示用户名和密码错误.即使重置密码,依然不能登陆.奇了个怪,单独检查用户邮箱,发现跟其他用户邮箱没有任何区别,专门看了一下OWA启用情况,也的确是启用了OWA的. 既然Exchang服务器没有啥问题,那就要重新定位到客户端的问题了,联想之前公司内部分用户在邮箱迁移过程中,由于没有勾选权限继承,导致迁移失败的问题.那这一次该用户无法登陆OWA,很有可能也是AD账号的问题.为此,找一个正常用户的AD账号和该用户的AD账号进行对比,权限.配置.......在某一个点,

用户三次登录锁定

需求     编写登陆接口     让用户输入用户名密码     认证成功后显示欢迎信息     输错三次后退出程序     可以支持多个用户登录     用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态 测试信息    用户           密码    alex            123    egon            456    锁定用户        密码    lyndon           789 流程图: 脚本实现: #!/bin/env pyth

连续三次登陆失败锁定账户

连续三次登录失败锁定账户 需求说明:1.输入用户名2.认证成功,提示登录成功,欢迎信息3.登录失败连续三次,提示失败,并退出程序 备注:1.users_info是存放用户名及其密码的文件,格式: 用户名 密码, 之间用空格隔开2.locked_file是存放被锁定的用户id的文件,默认为空,格式为: 用户名3.程序会对users_info里的合法用户id进行判断,若连续三次输入错误,提示失败并退出4.程序会对正确的用户名后的密码进行验证,输入三次密码错误,锁定该用户名,并退出 思路导图: 一.代

Centos7下用户登录失败N次后锁定用户禁止登陆的方法(转)

针对linux上的用户,如果用户连续3次登录失败,就锁定该用户,几分钟后该用户再自动解锁.Linux有一个pam_tally2.so的PAM模块,来限定用户的登录失败次数,如果次数达到设置的阈值,则锁定用户. PAM的配置文件介绍 PAM配置文件有两种写法: 一种是写在/etc/pam.conf文件中,但centos6之后的系统中,这个文件就没有了. 另一种写法是,将PAM配置文件放到/etc/pam.d/目录下,其规则内容都是不包含 service 部分的,即不包含服务名称,而/etc/pam