识别具有两个帐户的用户

时间:2013-08-01 10:51:51

标签: php mysql authentication user-accounts

我很欣赏这个问题永远不会是一个完美的答案,但我想知道你能走多远,用PHP + MySQL自动标记/识别你网站上有两个账号的个人。

比如在这个网站上说,他们可以使用一个帐户来“提升”其他帐户的声誉 - 这将是一个nono。

目前,我有一个IP域,每次登录时都会使用远程服务器IP进行更新,这远非完美。有没有更好的解决方案(除了详细的日志和比较用户行为之间的趋势),可以让您快速“提示”一瞥,通过更准确的IP比较或其他方式表明这可能会发生?

显然,如果用户真的想要这样做,他们会找到一种方法 - 但我想找到一个合理的解决方案,让它(至少)适度困难或令人沮丧,让他们把它拉下来。

非常感谢

2 个答案:

答案 0 :(得分:0)

有解决方案有缺点..

在我看来,我认为没有有效方法来阻止用户创建多个帐户。

正如您所指出的,您可以在PHP中存储IP,名称机器,session_id()并执行一些分析控制,但这可以为您带来误报。共享相同IP,同一台机器的用户..

可能的解决方案是让事情变得困难。使用某种用户验证,如验证电话,验证邮件,回答长注册表格。最终,这可能会让攻击者三思而后行,为创建多个帐户做额外工作的成本..

真正的用户必须做同样的事情,也许他们不会通过这种验证去你的网站。

很难在thoose之间做出选择。

另一个可能的解决方案是通过第三方应用程序注册,如Facebook,Google帐户。变得容易过滤多个帐户,并且是登录真实用户的简便方法。

最后,对我来说,控制社区最强大的方法之一是像stackoverflow这样的成就/声誉系统。它允许您控制新用户如果不花时间为社区工作,则不会干扰系统。在我看来,这是一个管理社区的真正强大的解决方案。

答案 1 :(得分:0)

IP地址禁止方法易于使用,至少作为唯一的安全方法。添加它不会比实施它所花费的时间更多,并且该方法确实有点帮助,但只是确保你补充它。

由于您有某种帐户,我建议您更多地关注用户部分。帐户的典型行为是什么,仅用于提升另一个帐户。对于每个操作,请记录两个用户,如果您看到以下模式,请发送警告或禁止。

如果是游戏或有人可能因某种原因想要禁止其他人。确保从该接收器中找到这些典型操作(或在IP地址中查找连接以确认)。这可以防止&#34;提升&#34;可能导致禁令不正确的攻击。<​​/ p>

很难给出提示,不知道系统应该如何工作以及你有什么价值,但我希望它会给你一些新想法。