Flex 4.5 - уникальная компьютерная информация - PullRequest
0 голосов
/ 29 августа 2011

Я разрабатываю веб-приложение flex 4.5, и мне нужно убедиться, что клиент выбирает определенный уровень безопасности, каждый пользователь может войти в систему только с авторизованного компьютера.

Так что вопрос в том, как можноЯ получил уникальную информацию о компьютере?Все, что угодно, например серийный номер жесткого диска, характеристики процессора, информация о материнской плате, даже пользователь, вошедший в операционную систему, может это сделать.

Пока информация в Интернете не дает мне большой надежды на то, что этого можно достичь, но я должен был спросить.Заранее спасибо.

Ответы [ 5 ]

2 голосов
/ 29 августа 2011

Ричард прав.В целях безопасности уникальная идентификационная информация недоступна для приложений, работающих через Flash Player.Вы можете написать элемент управления Active X (для IE) или плагин (для браузеров на основе Mozilla), чтобы получить дополнительную информацию для вашего приложения, если пользователи (и их ИТ-администраторы) позволяют это.Доступная информация зависит от браузера и операционной системы, в которой работает пользователь.

Adobe Air, с другой стороны, обеспечивает доступ к дополнительной сетевой информации, включая MAC-адрес в классе NetworkInfo.Возможно, стоит рассмотреть вопрос об установленном клиентском приложении для пользователей, которым требуется дополнительная безопасность.Взгляните на: http://www.adobe.com/devnet/air/flex/articles/retrieving_network_interfaces.html

2 голосов
/ 29 августа 2011

Полагаю, единственная опция, доступная для веб-приложения, - это создание уникального идентификатора из полей flash.system.Capabilities class .

Другая стратегия, которую можно использовать, это для генерации уникального UID в процессе авторизации компьютера, а затем для сохранения его в локальном хранилище с помощью SharedObject. Затем веб-приложение пытается прочитать данные авторизации из SharedObject при запуске веб-приложения. Если таких данных нет, компьютер не авторизован.

1 голос
/ 29 августа 2011

Это непросто с помощью приложения Flex на основе браузера, но есть некоторые обходные пути.

Flash Player на основе браузера может взаимодействовать с приложением AIR на рабочем столе с помощью локального подключения. Таким образом, вы можете создать приложение AIR, которое использует NativeProcess для получения информации о вашем компьютере.

Вы также можете использовать NativeProcess из приложения AIR вообще без использования браузера.

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

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

1 голос
/ 29 августа 2011

Песочница безопасности Flash Player не позволит вам прочитать что-либо уникальное о системе, в которой работает SWF, поэтому я боюсь, что это невозможно. Ближайшее, что вы получите, это, вероятно, Capabilities.serverString вместе с, возможно, IP-адресом, но свойство serverString просто перечисляет все возможности клиента, что, очевидно, не является уникальной вещью, и также может измениться с время от времени для одного и того же компьютера.

0 голосов
/ 30 августа 2011

Предупреждение: мои знания сценариев на стороне сервера ограничены, мягко говоря.Это не техническое решение, а скорее другой подход к вашей проблеме.

Альтернативным решением будет проверка необработанного пакета на сервере для получения таких данных, как IP-адрес и MAC-адрес.Исходя из этого, сервер может затем запретить или разрешить попытку входа в систему.

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

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