用户登陆认证

  1)输入用户名密码

  2)认证成功后显示欢迎信息

  3)输错三次后锁定

#!/usr/local/bin/python3# Author: Jonas Mao

import osimport sysimport getpass
os.system(‘clear‘)                                                        #清理屏幕(可选)user_limit = 0while user_limit < 3:     username = input(‘请输入您的用户名:‘)    lock_file = open(‘lock_list‘,‘r+‘)    lock_file2 = lock_file.readlines()    for lock in lock_file2:        lock = lock.strip(‘\n‘)         if username == lock:            print(‘用户%s已经锁定,请联系系统管理员!‘ % username)            sys.exit(1)     user_file = open(‘user_list‘,‘r+‘).readlines()    for user in user_file:        (user,passwd) = user.strip(‘\n‘).split()                        #分别获取帐号和密码信息        if username == user:            passwd_limit = 0            while passwd_limit < 3:                password = getpass.getpass(‘请输入您的密码:‘)         #输入密码时不可见                if password == passwd:                    print(‘欢迎用户%s登录系统!‘ %username)                    sys.exit(0)                else:                    if passwd_limit != 2:                        print(‘用户%s的密码错误,请重新输入,还有%d次机会!‘ %(username,2-passwd_limit))                    passwd_limit += 1             else:                lock_file.write(username + ‘\n‘)                lock_file.close()                sys.exit(‘用户%s已经锁定,请联系管理员!‘ % username)        else:            pass                                                            #当用户没匹配时,跳过并继续循环    else:        if user_limit != 2:            print(‘用户%s输入错误,请重新输入,还有%d次机会!‘ %(username,2-user_limit))        else:            sys.exit(‘错误输入导致程序退出,请重新运行!‘)          user_limit += 1

原文地址:https://www.cnblogs.com/jonas2017/p/8120699.html

时间: 2024-11-29 12:14:37

用户登陆认证的相关文章

Flask中如何实现用户登陆认证?

本文和大家分享的主要是使用Flask实现用户登陆认证的相关知识,希望对大家学习Flask有所帮助. 用户认证的原理 在了解使用Flask来实现用户认证之前,我们首先要明白用户认证的原理.假设现在我们要自己去实现用户认证,需要做哪些事情呢? 1. 首先,用户要能够输入用户名和密码,所以需要网页和表单,用以实现用户输入和提交的过程. 2. 用户提交了用户名和密码,我们就需要比对用户名,密码是否正确,而要想比对,首先我们的系统中就要有存储用户名,密码的地方,大多数后台系统会通过数据库来存储,但是实际上

从 &amp;quot;org.apache.hadoop.security.AccessControlException:Permission denied: user=...&amp;quot; 看Hadoop 的用户登陆认证

假设远程提交任务给Hadoop 可能会遇到?"org.apache.hadoop.security.AccessControlException:Permission denied: user=..." , 当然,假设是spark over YARN, 也相同会遇到相似的问题,比如: ?An error occurred while calling None.org.apache.spark.api.java.JavaSparkContext. : org.apache.hadoop.

REST_FRAMEWORK加深记忆-加了用户登陆认证,自定义权限的API接口

哈哈,终于快结束了.. urls.py from django.conf.urls import include, url from django.contrib import admin urlpatterns = [ url(r'^admin/', include(admin.site.urls)), url(r'^', include('snippets.urls')), ] urlpatterns += [ url(r'^api-auth/', include('rest_framewo

linux PAM 用户登录认证

PAM(Pluggable Authentication Modules )是由Sun提出的一种认证机制.它通过提供一些动态链接库和一套统一的API,将系统提供的服务 和该服务的认证方式分开,使得系统管理员可以灵活地根据需要给不同的服务配置不同的认证方式而无需更改服务程序,同时也便于向系 统中添加新的认证手段.从本篇开始会总结一些常用的pam模块及其实现的功能,今天讲的是pam_tally2模块. 一.参数与场景 应用场景:设置Linux用户连续N次输入错误密码进行登陆时,自动锁定X分钟或永久锁

PHPCMS \phpcms\modules\member\index.php 用户登陆SQL注入漏洞分析

catalog 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考 1. 漏洞描述2. 漏洞触发条件 0x1: POC http://localhost/phpcms_v9/index.php?m=member&c=index&a=login dosubmit=1&username=phpcms&password=123456%26username%3d%2527%2bunion%2bselect%2b%25272%2

PPTP-VPN第二章——使用mysql进行用户登录认证

在上一篇文章中记录了pptp vpn的创建过程和简单实用测试,其中用户名和密码均使用文本数据库/etc/ppp/chap-secrets,小规模用户下,尚可使用这种登陆验证方式,如果用户数多了,则需要将用户登录验证方式修改为查询数据库,在本文中将介绍如何将pptp vpn的用户名和密码认证信息存储在mysql数据库中. 前文传送门:http://ylw6006.blog.51cto.com/470441/1794577 一.安装和配置整合mysql-server和freeradius,和前文一样

.net实现网站用户登录认证

cookie登录后同域名下的网站保持相同的登录状态. 登录 private void SetAuthCookie(string userId, bool createPersistentCookie) { var ticket = new FormsAuthenticationTicket(2, userId, DateTime.Now, DateTime.Now.AddDays(7), true, "", FormsAuthentication.FormsCookiePath); s

思科路由器配合域内Radius服务器完成VPN用户身份认证

背景介绍: 公司有一个域环境,路由器Wan地址为:a.b.c.d,Lan地址为:192.168.30.1,其余服务器地址如图所示,其中VPN服务器需要2块网卡,第2块网卡的地址为172.16.0.1使用NAT转换通过192.168.30.5访问外网,给使用VPN登陆的客户端指定IP地址为10.0.0.1-10.0.0.100,为了方便管理,实现账号的单一登陆,搭建了Radius服务器,下面就来介绍如何使用思科路由器配合域内Radius服务器完成VPN用户身份认证. 路由器设置: 登陆路由器,首先

spring-security 登陆认证之初次探究

首先,希望还对 spring-security框架完全不懂的新手 下载下Git源码. 引入到项目中.这个短文就是边看源码边聊的.也会启动下项目验证自己的推想. spring-security 登陆认证的配置项如下: <form-login login-page="/login.jsp" authentication-failure-url="/login.jsp?error=true" default-target-url="/index.ht&qu