在一个没有用户的网站上,cookies是防止人们重复操作的唯一方法吗?

在一个没有用户的网站上,cookies是防止人们重复操作的唯一方法吗?,cookies,web,Cookies,Web,我正在创建一个网站,我不想拥有用户/会员资格 然而,使用该网站的人可以做投票和标记可疑内容等事情。使用cookies是识别和防止用户重复这样做的唯一方法吗 我意识到用户可以清除他们的cookies,但我想不出其他方法 对这种情况的建议?是的,你是对的 HTTP是无状态的,因此无法确定您现在收到的请求的来源是否与您在5分钟前收到的请求的来源相同或不同 饼干是解决这个问题的唯一方法。甚至服务器端会话也依赖cookies来跨请求维护会话标识(忽略在URL中传递sesison ID的安全噩梦,任何有恶意

我正在创建一个网站,我不想拥有用户/会员资格

然而,使用该网站的人可以做投票和标记可疑内容等事情。使用cookies是识别和防止用户重复这样做的唯一方法吗

我意识到用户可以清除他们的cookies,但我想不出其他方法

对这种情况的建议?

是的,你是对的

HTTP是无状态的,因此无法确定您现在收到的请求的来源是否与您在5分钟前收到的请求的来源相同或不同

饼干是解决这个问题的唯一方法。甚至服务器端会话也依赖cookies来跨请求维护会话标识(忽略在URL中传递sesison ID的安全噩梦,任何有恶意意图的人都可以轻易避开它)。

是的,你是对的

HTTP是无状态的,因此无法确定您现在收到的请求的来源是否与您在5分钟前收到的请求的来源相同或不同


饼干是解决这个问题的唯一方法。甚至服务器端会话也依赖cookie来跨请求维护会话标识(忽略在URL中传递sesison ID的安全噩梦,任何有恶意意图的人都可以轻易避开它)。

cookie是不够的,正如您所说,cookie可以被清除/过期

由于DHCP和防火墙,IP地址跟踪也不是一个选项

唯一能100%确定的是用户,但同样,一个人可以注册多个帐户


我要用饼干,这是最简单最不显眼的方式。如果有人真的想玩这个系统,他会找到一种方法,不管你怎么阻止它。

Cookies是不够的,正如你所说,Cookies可以被清除/过期

由于DHCP和防火墙,IP地址跟踪也不是一个选项

唯一能100%确定的是用户,但同样,一个人可以注册多个帐户


我要用饼干,这是最简单最不显眼的方式。如果有人真的想玩这个系统,他会找到一种方法来阻止它。

你可以在数据库的数据记录中映射cookie+ip地址。以识别用户。因此,如果数据库中存在ip,只需添加cookie,但首先检查cookie以避免不必要的数据库调用

但这并不是最优的,因为学校等在很多计算机上可能有相同的IP


您可以随时调整openid

您可以在数据库的数据记录中映射cookie+ip地址。以识别用户。因此,如果数据库中存在ip,只需添加cookie,但首先检查cookie以避免不必要的数据库调用

但这并不是最优的,因为学校等在很多计算机上可能有相同的IP


您可以随时调整openid

即使拥有会员资格,用户也可以多次注册和投票

cookie是处理这个问题的一种方法,但知道可以删除cookie的人可以再次投票

您可以捕获投票者的IP并基于此进行限制。但许多人将拥有相同的IP


遗憾的是,没有其他办法。

即使拥有会员资格,用户也可以多次注册和投票

cookie是处理这个问题的一种方法,但知道可以删除cookie的人可以再次投票

您可以捕获投票者的IP并基于此进行限制。但许多人将拥有相同的IP


遗憾的是,没有别的办法了。

Marko和Visage是正确的


不过要补充的是,您可能希望使用时间戳、IP等存储每个投票。。。因此,至少如果有人试图“游戏”你的网站,你可以在很短的时间内(即通过机器人)回滚来自同一地点的投票集。

Marko&Visage是正确的


不过要补充的是,您可能希望使用时间戳、IP等存储每个投票。。。因此,至少如果有人试图“游戏”你的网站,你就能够将来自同一地点或在很短时间内(即从机器人)所做的投票集回滚到其他人已经说过的所有投票集。这是另一个折衷的想法:


使用cookies作为限制投票的主要手段。如果未找到cookie,请检查IP地址。允许同一IP每5分钟不超过1票。

+1票,其他人已经说过。这是另一个折衷的想法:


使用cookies作为限制投票的主要手段。如果未找到cookie,请检查IP地址。同一IP每5分钟允许不超过1次投票。

如果适合,总会有人在系统上玩游戏。此外,如果你让它成为你根本不需要饼干,你就会受到非常简单的攻击

我想你会想办法增加用户在怀疑之下操作的经济成本。

例如,如果具有相同cookie的用户尝试重新提交投票,那么显然可以很容易地停止

如果使用不同cookie但来自同一IP的用户执行相同的操作,则可能来自代理/防火墙,因此您可能需要谨慎,并强制他们执行其他操作,例如简单的验证码。一旦他们做到了这一点,如果他们的行为正常,只要他们的新饼干还在,就不需要什么新东西了

这意味着没有cookie的人仍然可以参与,但他们每次都必须重新输入字母序列或其他内容。这是一个麻烦,但他们可能已经习惯了没有cookie就无法工作的网站。如果需要,他们可以破例

你真的无法对付坐在IP池(真实或其他)上的用户,利用你网站上新的动态攻击向量。那样的话,他们的经济投资会比你的多,