【问题标题】:Get Website Visitor MAC Address of the active lancard?获取活动网卡的网站访问者 MAC 地址?
【发布时间】:2011-06-09 01:25:30
【问题描述】:

我的要求是我有一部分网站应该只允许用户从一个系统访问。他可能使用不同的IP,如果系统相同,他应该能够获得访问权限。我的网站是 PHP 的。做一些研发,我发现如果访问者使用 IE,JS 有助于获取 MAC 地址。我的情况是我不能限制用户使用 IE。他可以使用任何浏览器。有什么方法可以获取 MAC 地址。如果不可能,我应该如何限制同一用户访问不同计算机的内容。

【问题讨论】:

    标签: php javascript ip


    【解决方案1】:

    没有。 MAC 地址在本地网络之外没有用,因此它们在上层(例如应用层)中不可用。使用 Javascript 获取地址也不是万无一失的,因为它非常容易被人操纵。

    如果您想限制用户可以访问您网站的主机,您需要在浏览器中使用一种存储持久性的方法来存储密钥 - 可以唯一标识它们的东西。一些论坛使用这种方法来抓捕试图绕过禁令的人。

    您应该生成某种随机密钥(或加密字符串),将其与您要识别的用户一起存储在服务器端,然后为用户提供要存储在 cookie/localStorage 中的密钥。

    不过,用户清除 cookie 的问题很明显……

    希望这能给你一些先机。

    【讨论】:

      【解决方案2】:

      Daniel 是正确的,尝试使用 MAC 地址是不切实际的。

      出于您的目的,您可能需要使用几层。 Cookie 是一个很好的起点。如前所述,它们可以被清除。用户也可能关闭了 cookie。 Cookie 也以纯文本形式存储在他们的计算机上,用户可以很容易地对其进行修改。

      您还可以使用 PHP 实现会话。每个会话对于每个系统和浏览器都是唯一的。如果用户切换浏览器或重新启动当前浏览器,会话将重新创建。

      您还可以检查他们的用户代理字符串。每个浏览器和“很可能”每个系统都会有所不同,但很容易被欺骗。

      您也可以使用公钥/私钥交换,但这可能很难实施和管理。

      确实没有一种万无一失的解决方案。最好的选择可能是使用多种技术组合,使其尽可能“接近万无一失”。尽量不要给用户带来太多不便。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-29
        • 2015-05-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-11-12
        相关资源
        最近更新 更多