博客
关于我
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-基本数据类型-元祖类型,字典类型,集合类型
    查看>>
    python-外观模式
    查看>>
    Python-如何使用FastAPI和uvicorn.run而不阻塞线程?
    查看>>
    Python-字典
    查看>>
    python-字符串
    查看>>
    Python-将二进制遮罩转换为多边形
    查看>>
    python-文件操作
    查看>>
    PYTHON-模块 sys os random shutil-练习
    查看>>
    Python-模块与包的管理
    查看>>
    PYTHON-模块定义 搜索路径
    查看>>
    Python-爬虫工程师-面试总结
    查看>>
    Python-类与文件读取结合
    查看>>
    python-类思想-实现简单增删查改
    查看>>
    python-网络编程
    查看>>
    python写入文件出现空行
    查看>>
    PYTHON-返回给定x的多边形路径的y坐标
    查看>>
    python-进程池与线程池,协程
    查看>>
    Python-通过函数传递变量
    查看>>
    Python内置函数详解——总结篇
    查看>>
    Python.对象集合中的标识.和散列
    查看>>