博客
关于我
python3 实现用户三次输入错误记录黑名单并对该用户登录锁定-day1
阅读量:796 次
发布时间:2023-03-08

本文共 1501 字,大约阅读时间需要 5 分钟。

Python 实现用户三次输入错误记录黑名单并锁定登录

在实际开发中,确保系统安全性是一个重要任务。为了防止用户多次输入错误导致的系统安全问题,我们可以通过记录黑名单的方式,对多次输入错误的用户进行锁定处理。本文将介绍一个简单的 Python 实现方案。

  • 黑名单记录机制我们需要一个记录黑名单的文件,用于存储多次输入错误的用户账号信息。每当用户输入错误次数达到一定限制时,将账号信息添加至黑名单文件中,并对该用户的登录权限进行锁定。

  • 输入验证逻辑在用户登录过程中,我们需要实现以下功能:

    • 用户输入用户名和密码
    • 检查输入是否正确
    • 统计错误输入次数
    • 处理多次输入错误
    1. 错误次数统计为了防止滥用,我们可以设置一个错误次数限制。例如,用户最多可以输入三次错误,超过三次后系统将锁定该用户账号。

    2. 实现代码以下是实现该功能的 Python 代码:

    3. import getpassimport re_username = 'justtest'_password = 'Dell@123'# 打开黑名单文件_lockfile = 'lockuser.txt'with open(_lockfile, 'r', encoding='gbk') as f:    _blacklist = [line.strip() for line in f]# 获取用户输入def get_user_input(prompt):    try:        return getpass.getpass(prompt)    except:        return input(prompt)# 检查用户名是否存在username = get_user_input("username:")if username in _blacklist:    print("User locked. Please contact admin.")else:    password = get_user_input("password:")    if username == _username and password == _password:        print("Welcome, {name}!".format(name=username))    else:        count = 0        while count <= 3:            if count == 3:                print("Too many failed attempts. Account locked.")                # 将用户名添加至黑名单                with open(_lockfile, 'a', encoding='utf-8') as f:                    f.write(username + "\n")                break            print("Invalid username or password. Try again.")            count += 1
      1. 黑名单操作在用户输入错误次数达到限制时,我们需要将用户名添加至黑名单文件中。这样可以有效防止频繁输入错误的用户对系统造成干扰。

      2. 系统锁定处理当用户输入错误次数达到限制后,系统将锁定该用户账号,防止其再次登录系统。

      3. 通过上述实现,我们可以有效地记录多次输入错误的用户账号,并对其进行锁定处理,从而提高系统安全性。

    转载地址:http://oulfk.baihongyu.com/

    你可能感兴趣的文章
    Python基础:11变量作用域和闭包
    查看>>
    Python基础: with模式和__enter__ 和 __exit__
    查看>>
    Python基础(7)--函数
    查看>>
    Python基础部分-while循环,格式化输出
    查看>>
    Python基础语法:顺序语句结构
    查看>>
    Python基础语法:理解代码与写代码
    查看>>
    Python基础语法:条件和分支
    查看>>
    Python基础语法:基本数据类型(数字类型和布尔类型)
    查看>>
    Python基础语法:基本数据类型(列表)
    查看>>
    Python基础语法:内置函数
    查看>>
    Python基础语法:你不得不知的几种变量类型
    查看>>
    Python基础语法教程,零基础入门到精通,看完这一篇就够了
    查看>>
    Python基础语法与执行脚本的3种方式
    查看>>
    python基础语法
    查看>>
    python基础语法
    查看>>
    python系列【仅供参考】:python测试开发基础---multiprocessing.Pool
    查看>>
    Python基础综合练习
    查看>>
    Python基础练习之一输出10000以内的阿姆斯特朗数
    查看>>
    python基础系列四:字符串,列表,字典,元组之间的转换
    查看>>
    python基础篇(9):模块
    查看>>