Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 29.02.2012, 18:13
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 1  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
bоnfire.swf должен Security.allowDomain, чтобы загружающие его флэшки, могли его трогать внутри. Видимо бонфаер не так прост.
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 29.02.2012, 18:20
s3dworld вне форума Посмотреть профиль Отправить личное сообщение для s3dworld Найти все сообщения от s3dworld
  № 2  
Ответить с цитированием
s3dworld

Регистрация: Apr 2010
Сообщений: 170
GBee
Цитата:
bоnfire.swf должен Security.allowDomain, чтобы загружающие его флэшки, могли его трогать внутри. Видимо бонфаер не так прост.
Вообще bоnfire.swf это дело рук художника/аниматора и он понятия не имеет про какую-то безопасность (как и я, кстати). Он просто накидал туда png-картинок и поставил на последний кадр примитивное gotoAndPlay(1). Там нет никаких связанных классов и прочего.

Я вообще новый программист в коллективе (и собственно единственный Flash-программист тут). Взялся за проект после предыдущего программиста. Кое какие косяки подправил и начальство решило что проект нужно с нуля переделать, так как то что там было намудрено уже никого не устраивало. И вот получается что все ресурсы (png и swf) сохранились. Я лишь пишу Game.swf. Но раньше всё это как-то грузилось и работало. А вот в моём варианте одни ошибки по безопасности.

Что можно сделать, чтобы каждый игровой swf-файл не перекомпилировать со связанным классом? Может просто все объекты грузить как набор байтов (ByteArray) и потом преобразовывать либо в Bitmap, либо в MovieClip?

Старый 29.02.2012, 22:15
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 3  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Мои советы не осилили?
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 01.03.2012, 12:34
s3dworld вне форума Посмотреть профиль Отправить личное сообщение для s3dworld Найти все сообщения от s3dworld
  № 4  
Ответить с цитированием
s3dworld

Регистрация: Apr 2010
Сообщений: 170
dimarik
Цитата:
Мои советы не осилили?
Просто не очень хочется использовать хак. Что на счёт ByteArray?

Старый 01.03.2012, 13:18
ChuwY вне форума Посмотреть профиль Отправить личное сообщение для ChuwY Посетить домашнюю страницу ChuwY Найти все сообщения от ChuwY
  № 5  
Ответить с цитированием
ChuwY
 
Аватар для ChuwY

Регистрация: Nov 2009
Адрес: Тула / Москва
Сообщений: 734
Отправить сообщение для ChuwY с помощью ICQ Отправить сообщение для ChuwY с помощью Skype™
У вас работает больше, чем у друга, потому что приложение, скорее всего, находится в доверенном каталоге.
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ"
Мои ачивки: художник-паразит.


Последний раз редактировалось ChuwY; 01.03.2012 в 13:25.
Старый 02.03.2012, 11:06
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 6  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Какой хак? Вы что, местных специалистов по FP-безопасности наслушались? Никогда это не было хаком!

И опять эти "Доступ только к локальным файлам", "доступ только к сети". Это относится только к локальной песочнице. Зазубрите это как Отче наш! Есть четыре типа песочниц.
- local-with-networking этот ваш "доступ только к сети";
- local-with-filesystem — "Доступ только к локальным файлам";
- local-trusted — режим беспредела. Включается красной кнопкой, местоположение которой уже известно комраду ChuwY;
- remote.

Первые три вида песочниц внезапно наступают при запуске файла локально с файловой системы. Вот ведь новость!

Но это же не ваш случай! Ваше все в "remote". Пофиг с каким флагом скомпилена флешка, вы загрузили ее с удаленного хоста (даже если со своего локально установленного денвера или IIS).

Выяснили, аха.
Что происходит? Домен vkontakte.ru (Loader.swf) хочет загрузить домен mysite.ru (Game.swf). FP выделяет ему свой собственный SecurityDomain, копируя, заметьте, все свои внутренние классы, включая Object. Все, приехали. Теперь этим доменам ну никак нельзя общаться, пока каждый не разрешит доступ к
а) своему тельцу через Security.allowDomain("домен другого тельца"). LocalConnection.allowDomain("домен другого тельца"). Это "разрешение разработчика".
б) к контенту домена через crossdomain.xml. Это "разрешение распространителя".

Есть четыре способа загрузки классов в ApplicationDomain, но я вам их не скажу, не потому что я злой, а я немного злой, а потому что сейчас это пока не важно. Так вот, один из способов называется "импортирующей загрузкой", бро! Заметьте, это не хак, не шмак и не фигак. Это вам не фуфло какое-нибудь, которое гонят из под полы. Это импортирующая загрузка. Она импортирует... импортирует... импортирует один SecurityDoman в другой!

Итак, импортируем mysite.ru во vkontakte.ru. Вуаля! Game.swf уже во vkontakte.ru (теперь банановый!).
Аха, но у Game.swf теперь начались проблемки с доступом к mysite.ru. Ведь ваши дизайнеры (bоnfire.swf) не знакомы с гениальной архитектурой XII века, тьху, с политикой безопасности FP и не прописали в bоnfire.swf Security.allowDomain("домен врага"). Вы не поверите, но теперь весь контент из mysite.ru необходимо импортировать во vkontakte.ru.

Если с пониманием "разрешения разработчика" и доступом к SecurityDomain нет никаких проблем, то с доступом к контенту есть нюансы. Чтобы FP начал шевелить задницей и стал загружать контент из вражеского и только вражеского домена, ему необходимо разрешение распространителя. Этот документ оформляется в виде файла crossdomain.xml с перечнем доменов из которых разрешен доступ к сокровенному. Есть у вас на сервере crossdomain.xml с <allow-access-from domain="vkontakte.ru" />? Как прекрасно! Тогда очень скоро насладимся вашей нетленкой.

Да, все это касалось контента как swf. С картинками немного проще, если вы не собираетесь работать с их пикселями. checkPolicyFile в этом случае не нужно указывать. Loader загрузит изображение без запроса разрешения распространителя! Оп-па! Но как только ваши шаловливые ручки тронут хоть один байтик, даже хоть одну ссылочку на loader.contect этого рисуночка (к Bitmap#draw() это тоже отностися ), как тут же выскочит чертик из табакерки и поругает "Алярм! Алярм! Белые в городе! SecurityError: Error #2122: Необходим файл политики, но, когда были загружены эти мультимедийные данные, флаг checkPolicyFile не был установлен." Но мы же хорошие и указываем checkPolicyFile в таком случае. Ха! А если у нас нет возможности подкрутить crossdomain.xml, тогда читаем мой блог.

Гляньте, какой красивый http://cs5504.vkontakte.ru/crossdomain.xml. Теперь вы понимаете, что домену mysite.ru ничего не светит в плане пикселей?

Тема секурности FP сама по себе удивительна и увлекательна. Приятного вам полета.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 02.03.2012, 11:09
MikroAcse вне форума Посмотреть профиль Отправить личное сообщение для MikroAcse Найти все сообщения от MikroAcse
  № 7  
Ответить с цитированием
MikroAcse
 
Аватар для MikroAcse

Регистрация: Feb 2012
Сообщений: 1,540
Цитата:
- local-trusted — режим беспредела. Включается красной кнопкой, местоположение которой уже известно комраду ChuwY;
Я тоже хочу знать!

Старый 02.03.2012, 11:18
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 8  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Так комрад любезно поделился ссылкой, если вы не заметили.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Создать новую тему Ответ Часовой пояс GMT +4, время: 14:09.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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