Получить MAC-адрес посетителя веб-сайта активного lancard?

Мое требование: у меня есть часть сайта, которая должна разрешить пользователю доступ только из одной системы. Он может использовать разные IP-адреса и разные, если система одна и та же, он должен иметь возможность получить доступ. Мой сайт на PHP. Проведя некоторые исследования и разработки, я обнаружил, что JS помогает получить MAC-адрес, если посетитель использует IE. В моем случае я не могу запретить пользователю использовать IE. Он может использовать любой браузер. Есть ли способ получить MAC-адрес. Если это невозможно, как мне ограничить доступ одного и того же пользователя к контенту с разных компьютеров.


person Satya    schedule 14.01.2011    source источник


Ответы (2)


Нет. MAC-адреса бесполезны за пределами локальной сети, поэтому они недоступны на верхних уровнях (например, на прикладном уровне). Использование Javascript для получения адреса также не совсем надежно, поскольку кому-то невероятно легко манипулировать.

Если вы хотите ограничить хосты, на которых пользователь может получить доступ к вашему сайту, вам нужно будет использовать метод хранения в браузере для хранения ключа — что-то, что однозначно идентифицирует их. Некоторые форумы используют этот метод, чтобы поймать людей, пытающихся обойти их баны.

Вы должны сгенерировать какой-то случайный ключ (или зашифровать строку), сохранить его на стороне сервера вместе с пользователем, которого вы хотите идентифицировать, а затем предоставить пользователю ключ, который будет сохранен в файле cookie/localStorage.

Тем не менее, существует очевидная проблема, связанная с очисткой пользователем своих файлов cookie...

Надеюсь, это даст вам немного форы.

person daniel    schedule 14.01.2011

Даниэль прав, пытаться использовать MAC-адреса нецелесообразно.

Для вашей цели вы, вероятно, захотите использовать несколько слоев. Файлы cookie — хорошее место для начала. Как уже говорилось, их можно очистить. Пользователь также может отключить файлы cookie. Файлы cookie также хранятся в виде простого текста на их компьютере, и пользователю очень легко изменить их.

Вы также можете реализовать сеансы с PHP. Каждый сеанс уникален для каждой системы и браузера. Если пользователь переключает браузеры или перезапускает текущий браузер, сеанс создается заново.

Вы также можете проверить их строку пользовательского агента. Он будет разным для каждого браузера и «скорее всего» для каждой системы, но его можно легко подделать.

Вы также можете использовать обмен открытым/закрытым ключом, но это может быть проблемой для реализации и управления.

На самом деле нет ни одного надежного решения. Лучше всего, вероятно, использовать комбинацию методов, чтобы сделать его как можно более «надежным». Просто постарайтесь не делать это слишком неудобным для пользователя.

person Keith    schedule 07.08.2012