Adobe - Flash - Platform Безпека під час завантаження та відтворення звуків
Flash Player 9 і пізніших версій, Adobe AIR 1.0 та пізніших версій
Здатність програми отримувати аудіодані може бути обмежена відповідно до моделі безпеки програвача Flash Player або AIR. На кожен звук поширюються обмеження двох різних ізольованих програмних середовищ: середовища самого вмісту («ізольоване програмне середовище вмісту») та середовища програми або об'єкта, що завантажує та відтворює звук («ізольоване програмне середовище власника»). Якщо вміст AIR знаходиться в ізольованому програмному середовищі програми, для нього доступні всі звуки, включаючи завантажені з інших доменів. Однак до вмісту з інших ізольованих програмних середовищ застосовуються ті ж правила, що й до вмісту Flash Player. Додаткові відомості про модель безпеки програвача Flash Player в цілому та визначення ізольованих програмних середовищ див. у розділі «Безпека».
Ізольоване програмне середовище вмісту контролює можливість отримання докладних даних звуку за допомогою властивості id3 або методу SoundMixer.computeSpectrum() . Вона не накладає обмежень на завантаження чи відтворення звуку.
Вихідний домен аудіофайлу визначає обмеження безпеки для ізольованого програмного середовища вмісту. Як правило, якщо аудіофайл розміщений у тому ж домені або папці, що і SWF-файл завантажуючого додатка або об'єкта, то додаток або об'єкт матиме повний доступ до цього звуку. Якщо звук розміщено в іншому домені, його можна імпортувати в ізольоване програмне середовище вмісту за допомогою файлу політики.
Програма може передати об'єкт SoundLoaderContext з властивістю checkPolicyFile як параметрметоду Sound.load(). Якщо задати властивості checkPolicyFile значення true, програвач Flash Player або AIR шукатиме файл політики на сервері, з якого завантажується звук. Якщо файл політики існує і надає доступ домену завантажуючого SWF-файлу, цей SWF-файл зможе завантажити властивість id3 об'єкта Sound і викликати метод SoundMixer.computeSpectrum() для завантажених звуків.
Ізольоване програмне середовище власника контролює локальне відтворення звуків. Ізольована програмне середовище власника визначається залежно від програми чи об'єкта, який запускає відтворення звуку.
Метод SoundMixer.stopAll() зупиняє всі звуки у всіх об'єктах SoundChannel, які відтворюються в даний момент, якщо вони відповідають наступним критеріям:
відтворення звуків було запущено об'єктами із тієї ж ізольованої програмного середовища власника;
звуки розміщені на вихідному сервері, на якому є файл політики, що надає доступ домену програми або об'єкта, що викликає метод SoundMixer.stopAll() .
Однак у AIR ці обмеження безпеки не поширюються на вміст в ізольованому програмному середовищі програми (вміст, встановлений з програмою AIR).