【问题标题】:can two users share the same Request.UserHostAddress [closed]两个用户可以共享同一个 Request.UserHostAddress [关闭]
【发布时间】:2015-09-24 23:45:39
【问题描述】:

我正在开发一个可供公共用户使用的 asp.net mvc-5 Web 应用程序(无需登录)。我需要防止同一用户在一小时内提交超过 5 个联系我们的请求。所以我需要一种方法来区分我收到的请求是否来自同一个用户。所以我找到了Request.UserHostAddress,它将包含用户IP(如果我没有记错公共IP)。但我的问题是这个值对全世界的每个用户来说都是唯一的吗?或者用户可能会分享这个价值?如果答案是用户可能会共享 Request.UserHostAddress ,那么哪个值会给我更好的方式来“验证”用户?

【问题讨论】:

标签: asp.net .net asp.net-mvc-5 network-programming request


【解决方案1】:

这个值对于全世界的每个用户来说都是唯一的吗?

没有。它在用户连接到互联网的地方是独一无二的。特定路由器/防火墙后面的所有用户都将使用相同的 IP 地址。

哪个值可以让我更好地“验证”用户

没有这样的价值。通常的处理方式是设置一个 cookie。

【讨论】:

    【解决方案2】:

    同一基于 NAT 的路由器上的多个用户将拥有相同的公共 IP 地址。看看这篇关于安全 stackexchange 的文章以获取替代方案: https://security.stackexchange.com/questions/81302/how-to-uniquely-identify-users-with-the-same-external-ip-address

    【讨论】:

      猜你喜欢
      • 2012-01-16
      • 1970-01-01
      • 2020-06-19
      • 1970-01-01
      • 2011-06-01
      • 2011-01-10
      • 2019-04-02
      • 1970-01-01
      • 2011-07-09
      相关资源
      最近更新 更多