我计划在Django应用程序中集成twilio以进行双因素身份验证。
现在,我已经安装了twilio模块,并向我的号码发送了一些随机消息。
下一步是让我发送一些随机的6位数字,这是在银行应用程序或谷歌双因素认证。
如何在我的DJango应用程序中生成这些数字?
发布于 2016-10-28 18:09:17
两位开发人员在这里传道。
有一些很好的答案可以帮助你生成一个随机的6位串,但是我只想再加一个建议。
奥西是Twilio的一部分,并作为服务提供双因素身份验证。它支持通过短信(通过Twilio)发送代码,在Authy应用中生成代码,甚至支持双因素身份验证,而无需将代码从应用程序/短消息复制到您的奥西OneTouch登录屏幕。您只需3个API调用就可以实现整个2FA流。
有一个关于如何将Authy与酒瓶结合使用的教程,我相信你可以把它翻译成Django。
如果这对我有帮助,请告诉我。
发布于 2016-10-21 18:07:45
除了Matthias的答案(我对他的回答投了反对票)之外,Django还为此提供了一个快捷函数:
from django.utils.crypto import get_random_string
get_random_string(length=6, allowed_chars='1234567890')更加可读的和难忘的。
而且,如果您真的关心这个字符串的随机性,您可能想要使用pycrypto的随机模,因为在编程语言中,随机函数的标准库实现不足以满足密码和安全相关问题的“随机性”。
发布于 2016-10-21 14:45:07
您可以使用random.choice来确定每一个数字。choice将从给定的序列中给出一个元素。
代码可以如下所示:
import random
pin = ''.join(random.choice('0123456789') for _ in range(6))https://stackoverflow.com/questions/40179469
复制相似问题