【问题标题】:GAE - Differentiate between multiple clients with the same ipGAE - 区分具有相同 IP 的多个客户端
【发布时间】:2012-07-11 14:50:25
【问题描述】:

atm 我正在构建自己的身份验证系统。但是今天我偶然发现了一个小问题。

如何区分相同ip的客户端?

我首先想到的是“嘿没问题,看看他们的 macip”。但是 HTTP 不包含 mac ip 地址,我无法在客户端上运行 python 程序。

所以我必须使用某种 javascript。

但这感觉就像一个黑客攻击。

所以我做了一些调查 Differentiating Between Two Computers On The Same Intranet

但是我怎样才能访问“clientport”呢?这是一个好的解决方案吗?

【问题讨论】:

  • 更好的解决方案是一开始就不要尝试发明自己的身份验证系统。你想达到什么目的?

标签: javascript python google-app-engine ip mac-address


【解决方案1】:

在客户端第一次访问时给他一个令牌,他必须在每次请求时将其发送回服务器以识别自己。在网络浏览器中,这是一个带有会话 ID 或类似唯一标识符的 cookie。在非 Web 浏览器系统上,您可以执行类似的操作。在协议级别无法做到这一点,因为底层协议(TCP/IP、HTTP)被设计为将数据包路由到它们的目的地,唯一标识不是该过程的一部分。

【讨论】:

    【解决方案2】:

    根据您的问题,我推断您正在编写基于 HTTP 的身份验证系统,而不仅仅是裸 TCP。在这种情况下,您可以使用 cookie,它提供了您需要的那种跟踪机制,并且是 HTTP 登录机制的首选。

    一般来说,使用 HTTP,您不必担心和处理 IP 地址,您在堆栈中的级别更高。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-09
      • 2019-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-17
      • 2011-11-25
      相关资源
      最近更新 更多