保护PHP/MySQL轮询系统的安全
我正在构建一个PHP/MySQL轮询系统,我想知道是否有比设置cookie+保存用户IP地址并稍后检查更安全的方法保护PHP/MySQL轮询系统的安全,php,mysql,Php,Mysql,我正在构建一个PHP/MySQL轮询系统,我想知道是否有比设置cookie+保存用户IP地址并稍后检查更安全的方法 谢谢。不,要确保投票系统的安全,您唯一能做的就是要求注册或有效的电子邮件地址 根据我的经验,除非你准备强迫人们创建一个用户帐户(然后将投票锁定到一个帐户),否则这几乎是你能做的所有事情。投票系统的问题是你想确保用户只能投票一次。这个问题没有解决办法,除非你要求提供不能伪造的个人信息。是的,用户/通行证是唯一的办法。如果您想在使用用户身份验证时保持简单,请使用Facebook Con
谢谢。不,要确保投票系统的安全,您唯一能做的就是要求注册或有效的电子邮件地址 根据我的经验,除非你准备强迫人们创建一个用户帐户(然后将投票锁定到一个帐户),否则这几乎是你能做的所有事情。投票系统的问题是你想确保用户只能投票一次。这个问题没有解决办法,除非你要求提供不能伪造的个人信息。是的,用户/通行证是唯一的办法。如果您想在使用用户身份验证时保持简单,请使用Facebook Connect。现在几乎每个人都有FB,你可以让它运行。我同意以前的观点,最安全的是存储投票和用户帐户信息(ID) 但是如果您需要无需注册的简单投票,唯一的方法是:
- 在客户端,使用更持久的东西(查看)
- 在服务器端-存储有关投票来宾用户的所有可能信息(操作系统、浏览器等)
- 对该数据执行简单的启发式或条件排序(如果os、IP和某些参数相同,则可能是同一用户)
- 不允许短时间投票(如果操作系统、IP和度量相同且时间小于X秒)
- 记录各种信息并调整您的系统
- 正确地告知用户发生了什么,即您的投票被拒绝,因为您已经投票等
- 拒绝奇怪的投票(无操作系统等)
- 在适当的地方使用MySQL索引李>
- 您还可以散列部分信息并只搜索相同的散列(IP、操作系统、浏览器)