PDA

Просмотр полной версии : Security и NetConnection


FilimoniC
19.02.2008, 15:00
Прошу помощи у знающих людей:
Есть кусок кода:

Security.allowDomain("localhost");
Security.allowInsecureDomain("localhost");

Security.allowDomain("127.0.0.1");
Security.allowInsecureDomain("127.0.0.1");

Security.allowDomain("*");
Security.allowInsecureDomain("*");

serverURL="http://localhost:9090";
...
...
responder = new Responder(onRespOk,onRespErr);
nc = new NetConnection();
nc.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
nc.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
if (AMFVersion == 3)
nc.objectEncoding =ObjectEncoding.AMF3;
else if(AMFVersion == 0)
nc.objectEncoding = ObjectEncoding.AMF0;
else log ("Unsupported AMF type, nah!");

serverURL = txt_ServerURL.text;
log ("Connecting to "+serverURL);
nc.connect(serverURL);


Который по идее должен давать разрешение флешу коннектиться к localhost. На одном компе это происходит, на еще двух (Win и Lin) - нет.

На http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html стоит allow all

Использую протоколы RTMP и HTTP

Что я забыл? :(

FilimoniC
19.02.2008, 15:56
Выскакивает ошибка
SecurityError: Error #2028: Local-with-filesystem SWF file file:///D|/WORK/AMF%5FOBJ/AMF%5FOB.swf cannot access Internet URL http://localhost:9090.
at flash.net::NetConnection/connect()
at AMF_OB/::connectNC()
Как его переместить в другой sandbox (local-trusted)? Нигде не нашел (НЕ средствами флеша, подойдет любое средство :) )

etc
19.02.2008, 16:27
См. FAQ, тему настройки локального доступа.

FilimoniC
19.02.2008, 16:45
А все уже.. Вот тут нашел документ (http://www.adobe.com/devnet/flashplayer/articles/flash_player_admin_guide/flash_player_admin_guide.pdf).
- создал в C:\windows\system32\Macromed\Flash\FlashPlayerTrust файлик xxxx.txt и в него вписал строку c:\flash
Сразу стало localTrust

etc
19.02.2008, 17:23
Этого же можно было добиться и без шаманств с txt, путем прочтения темы из FAQ.

FilimoniC
19.02.2008, 17:55
Это "без txt" делается через Security?
Примечание которое не упомянул: требуется также доступ к файлам на диске, так что localWithNetwork видимо не подходит.
swf запускается локально.

upd: Прочитал Настройка локального доступа (в случае проблем с getURL и загрузки данных) (http://www.flasher.ru/forum/showthread.php?t=92951) (Вы это имели ввиду?) - для автоматической системы это выливается в подмену settings.sol, что не очень желательно. А вот скопировать файл - самое оно, имхо.