Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Проблемы безопасности stop() у флешки загруженой с другого домена. (http://www.flasher.ru/forum/showthread.php?t=121891)

wvxvw 25.02.2009 17:44

Проблемы безопасности stop() у флешки загруженой с другого домена.
 
Вобщем, проблема такая:
Есть:
- флешка на локалхост, она грузит другую флешку, в которой нет скриптов (сгенеренную на сервере).
- на сервере, откуда приходит флешка есть кроссдомейн. Кросдомейн загружается, тут нет проблем.
- не смотря на полученый кросдомейн флешка не реагирует на play / stop =/
Вот, собственно набор всего, что сделано, опробовано в FP9 V 124 и в FP10:
Код:

var params = {allowScriptAccess: "always"};
swfobject.embedSWF("player.swf", "playerDiv", "320", "270", "9.0.0", "expressInstall.swf", {}, params, params);

Код AS1/AS2:

trace("System.security.sandboxType " + System.security.sandboxType); // remote

Код AS1/AS2:

_mcl = new MovieClipLoader();
_mcl.checkPolicyFile = true;

Код:

<?xml version="1.0"?>
<cross-domain-policy>
        <allow-access-from domain="*"/>
</cross-domain-policy>

Код:

*** Security Sandbox Violation ***
SecurityDomain 'http://localhost/..../player.html' tried to access incompatible context 'http://555.555.555.555/..../file.swf'

Если я на тот же сервер положу флешку в которой будет
Код AS1/AS2:

System.security.allowDomain("*");

то я смогу вызвать stop / play. Но я не могу добавить эту строчку в загружаемые флешки т.как они генеряться утилитой, которую не мы писали... и лезть разбираться, как добавить туда в байткод эту строчку очень не хочется...
Вопрос: так и должно быть? Это баг? Можно ли как-то решить эту проблему не используя АС3 (увы, проэкт должен быть на АС2 - требования заказчика :( )

chingachgoog 25.02.2009 18:56

А если не play()/stop(), а gotoAndPlay/Stop() ?

etc 25.02.2009 18:57

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

wvxvw 25.02.2009 19:13

ОК, немного дполнительной инфы:
Вся задумка примерно такая: Существует готовая утилита, которая генерит SWF с заэмбедденым FlashVideo - таким образом создается некое подобие банера. Эта утилита - часть солюшена, которая отдается заказчику (которых потенциально может быть много). Он у себя на сервере используя эту утилиту + админку подгружает видео, конвертирует во Флеш - и после этого это видео может быть показано в любом месте, где вставлен плеер способный это видео проигрывать. Собственно, банерообменная сеть. Утилита ни разу не опенсорсная и вообще платная - мы просто реселеры. Так что "исправить" ее так, чтобы она дописывала разрешение на загрузку - низзя изза юридических сложностей...

Вобщем, немного пообщавшись пришли к такому выводу: Скорее всего оптимальным решением будет одно из двух: добавить еще 1 этап после конвертации, где MTASC будет делать инъекцию этого самого кода разрешающего загрузку. Либо, вариант 2: попробовать самим написать что-то что бы делало такую инъекцию...

ЗЫ. А вообще - если чесно - слов (матерных) не хватает :) ну зачем запрещать play / stop то?
ЗЫЫ. А еще веселее от того, что Flex SDK не умеет видео ембедить...

etc 25.02.2009 19:25

Жаль не AS3, там можно было бы грузить бинарник и всё :)

wvxvw 25.02.2009 19:38

С АС3 фишка в стоимости, как ни странно :)
Т.е. если бы можно было бы воткнуть в утилиту флексовый компайлер - ну... не смотря на то, что ему нужна Ява, ладно бы, бог с ним... но так он еще и не может слепить бинарник из видео... т.е.
Можно технически извернуться и воспользоваться флешевым компайлером + ФЛА в который пихать видео (вообще очень муторно, т.как его нужно будет еще и перекодировать флешевым енкодером...) но, предположим, что мы бы справились с техническими сложностями (хехе...) так флешевый компайлер отдельно не продается! А минимально что официально можно купить - Флеш... $700 за какую-то несчасную утилиту + перепродавать продукты Адоби, как часть своего приложения - ну, вобщем вы поняли :)

lexa2000lexa 25.02.2009 19:39

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

etc 25.02.2009 19:41

wvxvw, зачем? Бинарник есть, загрузил через loadBytes и пофиг на секьюрити :)

wvxvw 25.02.2009 20:50

Загрузить-то не проблема :) Проблема проиграть / остановить + ембед видео...

@ lexa2000lexa:
Нет... утлилита была написана когда еще 9-го плеера даже не было...

etc 25.02.2009 21:59

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


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

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