关于AWS-阿里-堡垒机Console界面-登录-多因子MFA-认证的动态口令生成的python实现
Posted on 2023-07-15 12:22 520_1351 阅读(439) 评论(0) 编辑 收藏 举报对于很多公司来说、都会要求在登录云平台,如AWS云,阿里云,或者堡垒机Console ,甚至操作系统时,都会要求登录时,进行二次认证
也即是多因素,多因子,MFA认证,关于多因素认证、一般有短信验证码,软件生成code,或者邮件接收Code,都可以实现
今天笔者主要讲述,如何通过python代码进行实现,AWS,阿里云、或者常用的堡垒机Console界面的二次MFA认证实现
核心是使用的OTP(One-Time Password,一次性密码),它是一种基于时间同步算法(TOTP)的二次验证方式,从密码学算法的角度来说属于单向
先看看笔者python作品的界面如下,每一秒刷新一次(当然实际Code值的变化周期一般为30秒),点击右侧的Copy按钮可以进行前面动态口令的复制
Ptyhon代码核心如下,包括其算法生成及Copy到系统粘贴板:
for i in range(AccountNumber): LabelList[i]=tkinter.Label(root,text=AccountInformation[i][0]) LabelList[i].grid(row=i,column=0,padx=10,pady=3) TextList[i]=tkinter.Text(root,width=30,height=1) TextList[i].grid(row=i,column=1,padx=1,pady=3) ButtonList[i]=tkinter.Button(root, text="Copy",command=functools.partial(TextContentCopy,root,TextList[i]),width=15,height=1) ButtonList[i].grid(row=i,column=2,padx=10,pady=3) def confirm(): for i in range(AccountNumber): TkinterTextDelete(TextList[i]) TextList[i].insert("0.0",pyotp.TOTP(AccountInformation[i][1]).now()) root.after(1000,confirm)
要生成动态口令,我们只需要准备好相应的二维码,将其转换成字符密钥,或者直接使用密钥都是可以的~
尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/17555938.html
作者:一名卑微的IT民工
出处:https://www.cnblogs.com/5201351
本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。
由于博主的水平不高,文章没有高度、深度和广度,只是凑字数,不足和错误之处在所难免,希望大家能够批评指出。
博主是利用读书、参考、引用、复制和粘贴等多种方式打造成自己的文章,请原谅博主成为一个卑微的IT民工!