网站登录安全系统仔细检查:基于IP的白名单,通过已在系统的电子邮件地址

时间:2011-04-22 17:44:01

标签: security web login whitelist

我最近必须获得一个网站管理登录系统,并希望对我正在使用的方法有一些第二意见,因为安全性往往会受益于第二意见。

实施细节:Linux,Debian,Mysql,Php

Ip白名单系统

件: in-database:用户名,密码,电子邮件,IP地址,ip白名单 用户提供:用户名,密码 客户提供:当前IP地址

除了需要正确的用户名和密码外,您连接的系统的IP必须列入白名单以允许登录。因此,系统的逻辑级联如下:

  • 如果ip未列入白名单:您无法登录,则必须验证该IP。
  • 验证您当前的IP:转到页面,输入用户名,您会收到“我们将验证用户名[someUsername](如果存在),您将直接收到该帐户的自动电子邮件。”验证电子邮件将通过电子邮件发送到该帐户的电子邮件中(如果存在)。活跃。否则它只会显示消息而不执行任何操作。
  • 验证邮件:只需一个链接,其中包含与验证数据库中的密钥匹配的私钥,指向该网站的链接,页面链接将验证数据库中该记录的IP。

  • 如果ip白名单:一旦列入白名单,正常的用户名/密码组合将被接受正常登录,不正确的用户名/密码组合将被拒绝。

那就是系统。它似乎与银行用于验证设备的方法略有相似,但并不完全相同,因此可能需要重构。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

我唯一的建议是使用Golden Questions与电子邮件。电子邮件很容易受到损害。


如果您不熟悉黄金问题,那么您可以在其中导入用户导入X数量的问题和答案。他们第一次登录时你会随机让他们回答他们的一些子集,如果他们正确地做了你可以列入白名单。每次使用新IP登录时,都会重复此过程。


一些额外的好处是更快的用户体验和更少的中断(他们不必在被允许访问之前等待电子邮件)。