Идентификация устройства, доступ к HTML-странице - PullRequest
0 голосов
/ 02 марта 2012

Цель: Ограничить доступ авторизованным устройствам, которые имеют доступ к моему веб-приложению HTML5 (.html).

Вот дилемма: У меня есть приложение HTML5 Offline (.html), который будет загружать все свои ресурсы с веб-адреса.Я хочу ограничить доступ к указанным устройствам.

Проблема:

  • Идентификация устройства.Так как .html-страницы не могут получить MAC-адрес устройства, и если пользователь может указать этот MAC-адрес, он может быть легко подделан.
  • Поскольку все устройства будут одинаковыми (iPads).User-Agent не позволил бы мне однозначно идентифицировать устройство, и оно всегда могло быть подделано.

Есть ли способ идентифицировать устройство по уникальному значению в Webkit / Safari, которое не может быть легко подделано?Mac-адрес был бы идеальным значением для получения, но так как это невозможно, я ищу другие идеи, которые помогли бы идентифицировать устройство уникальным образом.

В идеальном мире устройство будет загружать веб-приложение, веб-приложение отправит AMS-запрос в CMS для проверки уникального идентификатора устройства и возврата результата.

Любые идеи или мысли приветствуются.Спасибо!

Ответы [ 2 ]

1 голос
/ 02 марта 2012

Лучшим решением здесь будет развертывание SSL с взаимной аутентификацией между вашими клиентскими планшетами и вашим сервером. Вы можете использовать самозаверяющие сертификаты, поэтому вам не нужно покупать их в ЦС. Это гарантирует, что ваш сервер будет принимать запросы только от планшетов, имеющих клиентский сертификат (настройте сервер так, чтобы он принимал только самозаверяющие клиентские сертификаты, развернутые на планшетах для аутентификации клиента).

0 голосов
/ 02 марта 2012

Это должно быть сделано на стороне сервера. Веб-клиент (браузер) отправляет запрос на сервер с его данными. Теперь вы можете сделать это с помощью javascipt

var browser = navigator.appName;
if (browser == "bad") window.location = "http://example.com";

но устройство должно загрузить и выполнить код.

Лучший способ - использовать PHP

$browser = $_SERVER['HTTP_USER_AGENT'];
if ($browser == "bad") header ("Location: http://example.com");

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...