У меня есть сервер swf one one, который извлекает контент с сервера Amazon S3.На данный момент я настроил общую междоменную политику, разрешающую доступ ко всем доменам:
На сервере, содержащем swf:
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE cross-domain-policy SYSTEM
"http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*" />
</cross-domain-policy>
На сервере S3:
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE cross-domain-policy SYSTEM
"http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<site-control permitted-cross-domain-policies="master-only" />
<allow-access-from domain="*" />
<allow-http-request-headers-from domain="*"
headers="SOAPAction" />
</cross-domain-policy>
Похоже, что они играют хорошо (по большей части), так как мой SWF теперь прекрасно загружает файлы JSON, XML и т. Д. С сервера S3.То, что он не делает правильно, это загрузка SWF-файлов с сервера S3, когда он пытается сделать это, он выдает следующее исключение:
SecurityError: Ошибка # 2121: нарушение изолированной программной среды безопасности: загрузчик.content: s3.amazonaws.com/bucket_name/swfs/foo.swf не может получить доступ к s3.amazonaws.com/bucket_name/data/swfs/bar.swf.Это можно обойти, вызвав Security.allowDomain.
Я предполагаю, что это потому, что удаленные swfs могут содержать вредоносный исполняемый код.Действительно ли мне нужно установить для allowDomain что-то или есть какой-то другой «более правильный» способ, позволяющий моему swf загружать другие удаленные swfs?