2013-09-11 5 views
32

Мы разрабатываем собственное веб-приложение для просмотра отчетов о данных при таргетинге на смартфоны и планшеты. Наш клиент спросил нас о возможности доступа к содержимому только определенным устройствам. Следовательно, мы используем технологии, основанные на javascript/HTML5, мы не способны читать уникальный идентификатор, такой как IMEI или uuid устройства. Идея состоит в том, чтобы иметь возможность автоматически создавать независимые от времени манипуляции с устройствами с вышеупомянутыми технологиями.Уникальная идентификация устройства

Вопрос в том, можем ли мы создать уникальный отпечаток устройства с помощью javascript/HTML5?

Ключ может быть доступна или известным браузером информации (например, http://browserspy.dk/)

+0

Я предполагаю, что вы хотели бы, чтобы это было все за кулисами, так сказать? Как в No passkey, который должен быть введен или что-нибудь еще? Кроме того, на некоторых устройствах вы имеете в виду, что к ним могут обращаться только телефоны и планшеты или только определенные отдельные устройства, например, к ним могут обращаться только телефоны сотрудников? –

+1

Аналогичный вопрос, который может оказаться полезным: http: //stackoverflow.com/questions/6445472/get-unique-static-id-from-a-device-via-web-request – Oliver

+1

Вы говорите о JS и HTML5, но это только технология интерфейса. На стороне сервера вы можете использовать MAC-адрес из запросов устройств, но даже это небезопасно, поскольку его можно легко подделать. Я бы пошел на стандартную аутентификацию пользователя, а не на устройство. – Robert

ответ

76

Вы можете использовать fingerprintJS библиотеки, это очень помогает при расчете браузерных отпечатков пальцев.

Кстати, на Panopticlick вы можете видеть, насколько это уникально.

+0

действительно хороший ответ! Я бы хотел проголосовать 10 раз по крайней мере :) – TauWich

+7

Ваш «уникальный отпечаток» регулярно меняется с помощью этого метода. Все, что вам нужно сделать, это добавить/удалить плагин браузера или системный шрифт, и вы больше не будете классифицироваться как один и тот же браузер. – Archer

+1

Правильно, но, насколько известно, другого метода нет. Может быть хорошей идеей создать куки-файл (или постоянный файл cookie), чтобы игнорировать будущие изменения в отпечатке пальца. –

3

Похоже, что плагин phoneGap позволит вам получить uid устройства.

http://docs.phonegap.com/en/3.0.0/cordova_device_device.md.html#device.uuid

+1

, если это действительно работает в контексте javascript браузера, то почему это не библиотека https://github.com/Valve/fingerprintJS? Насколько я могу судить, телефонная книга - это мобильная библиотека разработки для веб-приложений *, не являющаяся автономной библиотекой javascript. – user3338098

+0

Если бы это сработало, это уничтожило бы любую оставшуюся концепцию анонимности веб-браузера ... эта «функция» нарушила бы ожидания конфиденциальности пользователей при просмотре веб-страниц. – user3338098

+3

Плагин Cordova зависит от запуска собственного кода (например, java для Android, объектива-C для iPhone), поэтому это не чистое решение javascript afaik. – treejanitor

Смежные вопросы