Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Как обойти систему безопасности ? (http://www.flasher.ru/forum/showthread.php?t=116744)

eugenk 09.10.2008 20:21

Как обойти систему безопасности ?
 
Задача такая. На компьютере запущено некое приложение на С++, главное предназначение которого читать поток данных с некоего устройства и выдавать его по TCP/IP в какой-то зарезервированный порт на локальном хосте. Флеш-ролик должен брать данные из этого порта и работать с ними. Этот ролик должен загружаться с удаленного сайта. Сделать это препятствует система безопасности, не позволяющая объектам из remote sandbox обращаться к локальным объектам. Вопрос как её обойти наиболее красивым способом ? У кого какие соображения ?

P.S. Задачу можно сформулировать так. Как передать поток данных с некоего подключенного к компьютеру устройства, удаленному флеш-ролику ?

P.P.S. Только не надо говорить мне что это невозможно и объяснять почему. Курчатов в такой ситуации сказал одному из сотрудников "Меня не интересует почему это невозможно, меня интересует как это сделать". Я вижу по крайней мере два способа это сделать, увы оба достаточно уродские.
1) Передавать поток данных с устройства прямо на удаленный хост, а с него уже в ролик.
2) Сделать ролик-посредник, собирающий локальные данные по TCP/IP прописав его как Local Trusted и коннектиться с ним удаленным роликом через LocalConnection.
Оба способа по ряду причин меня не удовлетворяют. Спрашивается, что в этой ситуации можно предпринять ещё ?

aksios 09.10.2008 20:32

Запустите сервер для этого порта на хосте и собственно все.

eugenk 09.10.2008 20:53

Да, это как раз и есть первый из перечисленных мной способов. Гнать прямо на удаленный хост, а с него уже в ролик. К сожалению во-первых такой сервер придется ещё писать, и он будет не слишком простым, учитывая что клиентов к нему может быть подключено много. Во-вторых это технология уже выходящая за рамки CGI и далеко не факт, что владелец хостинга разрешит такой сервер поставить. Так что увы, не годится.

aksios 09.10.2008 21:11

eugenk, может я чета сильно не понимаю...
1/есть локаль - ваше приложение
2/есть некий порт компьютера, использующийся в качестве источника данных для флешки
3/загруженная флешка к этому источнику данных локально обратиться не может
4/делаем нужный порт (источник данных) доступным через веб как хост - для этого на локальном компе должен быть установлен веб сервер - писать его заново не надо, поскольку есть стандартные решения
5/ флешка обращается к этому хосту
6/ все замечательно работает

eugenk 09.10.2008 21:29

Согласен, всё это будет работать. Проблема в том, чтобы уговорить владельца хостинга поставить дополнительный сервер, открывающий какой-то совершенно левый порт. Если у тебя выделенный хост, то да, никаких проблем. Но если у тебя обычный виртуальный хостинг как у простого смертного, этот способ увы не подходит. Сейчас начал смотреть параллельную ветку форума про air, zink и т.п. Возможно решение в том, чтобы в эту прогу на C++ включить плеер в качестве ActiveX компонента и через него уже вязаься с внешним роликом.

aksios 09.10.2008 21:37

Какая разница запустить на локальном компьютере одно приложение или по сути два? Причем тут хостинг? - Где у меня про хостинг написано?
Если вы дистрибутцией готовы решить проблему, что я собственно и подозревал - сделайте так.

eugenk 10.10.2008 00:00

А... Извиняюсь. Понял. Установить тот же деневер хотя бы. Создать в нем сайт с каким-то совершенно левым и заведомо неконфликтным именем и гнать данные уже оттуда, якобы как с удаленного хоста. Я правильно понял ? Не знаю если честно будет ли это работать. Очень может быть что да. Хотя и несколько коряво, но всяко лучше чем придумал я. Но вопрос снимается ибо я тут в параллельной ветке отыскал оптимальное решение.
http://www.flasher.ru/forum/showthread.php?t=107547
Оказывается можно довольно легко эмулировать LocalConnection на С++. Это наиболее красиво решает мою проблему.


Часовой пояс GMT +4, время: 09:12.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.