我想在我的网络应用程序中实现密码恢复。
我想避免使用秘密问题。
我可以通过电子邮件发送密码,但我认为这会有风险。
也许我可以生成一个新的临时随机密码并通过电子邮件发送,但我认为这与上述观点一样有风险。
例如,我可以通过电子邮件发送网址吗http://example.com/token=xxxx http://example.com/token=xxxx其中 xxxx 是与用户关联的随机令牌。因此,当用户导航到该网址时,他/她可以重置密码。
当我在空军时,我们的安全规则是:设置或重置密码时,不要在同一封电子邮件中发送用户 ID 和密码。这样,如果有人拦截窥探密码的电子邮件,他必须成功拦截这两封电子邮件,并能够连接它们,从而破坏安全性。
我见过很多网站都使用“转到此 URL 来重置您的密码”。也许我遗漏了一些东西——我并不声称自己是安全专家——但我不认为这比仅仅发明一个新的临时密码并发送它更安全。如果黑客拦截了电子邮件,为什么他不能像合法用户一样访问该链接并查看新密码?在我看来,这给用户带来了额外的麻烦,而且没有任何安全保障。
顺便说一句,恭喜您没有使用安全问题。我不明白这个装置的逻辑。自计算机安全诞生以来,我们一直告诉人们,“不要创建黑客可以发现或猜测的有关您自己的信息的密码,例如您高中的名称或您最喜欢的颜色。黑客可能能够查找您高中的名称,或者即使他们不认识您或对您一无所知,如果您仍然住在您上学的地方附近,他们可能会通过尝试当地学校直到找到为止。少量可能最喜欢的颜色,这样黑客就可以猜到。等等。相反,密码应该是字母、数字和标点符号的无意义组合。但现在我们也告诉他们,“但是!如果你很难记住字母、数字和标点符号的无意义组合,没问题!获取一些你可以轻松记住的有关你自己的信息 - 例如你高中的名称,或您最喜欢的颜色 - 您可以使用它作为“安全问题”的答案,即作为替代密码。”
事实上,与您一开始就选择错误的密码相比,安全问题更容易让黑客得逞。至少如果您只是使用一条个人信息作为密码,黑客不一定知道您使用的是哪条个人信息。你用过你的狗的名字吗?你的出生日期?你最喜欢的冰淇淋口味?他必须尝试所有这些。但通过安全问题,我们可以准确地告诉黑客您使用哪条个人信息作为密码!
与其使用安全问题,我们为什么不直接说:“如果您忘记了密码,密码会显示在屏幕底部。如果您试图侵入他人的帐户,绝对会被禁止向下滚动。”只是安全性稍差一些。
免得您怀疑,当网站询问我出生的城市或我的第一辆汽车的制造商时,我不会对问题给出实际答案。我给出了一个毫无意义的密码。
咆哮>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)