Considerazioni sulla sicurezza durante il caricamento e la riproduzione dell'audio

Flash Player 9 e versioni successive, Adobe AIR 1.0 e versioni successive

La capacità dell'applicazione di accedere ai dati audio può essere limitata a seconda del modello di sicurezza di Flash Player o AIR. Ogni suono è soggetto alle limitazioni di due diverse sandbox di sicurezza: quella per il contenuto stesso (definita “sandbox del contenuto”) e quella per l'applicazione o l'oggetto che carica e riproduce il suono (definita “sandbox del titolare”). Per quanto riguarda il contenuto dell'applicazione AIR nella sandbox di sicurezza dell'applicazione tutti i suoni, inclusi quelli caricati da altri domini, sono accessibili al contenuto nella sandbox di sicurezza dell'applicazione. Però il contenuto di altre sandbox di sicurezza rispetta le stesse regole del contenuto eseguito in Flash Player. Per informazioni generali sul modello di sicurezza di e sulla definizione delle funzioni di sicurezza sandbox, vedete Sicurezza .

La sandbox del contenuto determina se è possibile estrarre dei dati audio dettagliati dall'audio mediante la proprietà id3 o il metodo SoundMixer.computeSpectrum() . Non limita il caricamento o la riproduzione del file audio.

Il dominio di origine del file audio definisce le limitazioni di sicurezza della sandbox del contenuto. In genere, se un file audio si trova nello stesso dominio o nella stessa cartella del file SWF dell'applicazione o dell'oggetto che lo carica, l'applicazione o l'oggetto ha l'accesso completo a tale file audio. Se l'audio proviene da un dominio diverso rispetto all'applicazione, può essere comunque incluso nella sandbox del contenuto mediante un file di criteri.

L'applicazione può passare un oggetto SoundLoaderContext con una proprietà checkPolicyFile come parametro per il metodo Sound.load() . Se la proprietà checkPolicyFile viene impostata su true , in Flash Player o AIR viene verificata la presenza di un file di criteri nel server da cui viene caricato l'audio. Se un file di criteri è presente e consente l'accesso al dominio del file SWF in fase di caricamento, il file SWF può caricare il file audio, accedere alla proprietà id3 dell'oggetto Sound e chiamare il metodo SoundMixer.computeSpectrum() per i suoni caricati.

La sandbox del titolare controlla la riproduzione locale dell'audio. L'applicazione o l'oggetto che avvia la riproduzione di un file audio definisce la sandbox del titolare.

Il metodo SoundMixer.stopAll() interrompe la riproduzione dell'audio in tutti gli oggetti SoundChannel che sono attualmente in corso di riproduzione, a condizione che soddisfino i criteri seguenti:

  • I file audio sono stati avviati da oggetti all'interno della stessa sandbox del titolare.

  • I suoni provengono da un'origine con un file di criteri che consente l'accesso al dominio dell'applicazione o dell'oggetto che chiama il metodo SoundMixer.stopAll() .

In AIR tuttavia il contenuto della sandbox di sicurezza dell'applicazione (contenuto installato con l'applicazione AIR) non è limitato da tali restrizioni di sicurezza.

Per determinare se il metodo SoundMixer.stopAll() interrompe effettivamente tutti i file audio in corso di riproduzione, l'applicazione può chiamare il metodo SoundMixer.areSoundsInaccessible() . Se tale metodo restituisce il valore true , alcuni dei file audio in corso di riproduzione si trovano fuori dal controllo della sandbox del titolare corrente e non vengono interrotti dal metodo SoundMixer.stopAll() .

Il metodo SoundMixer.stopAll() arresta anche l'indicatore di riproduzione, evitando che continui per tutti i file audio che sono stati caricati da file esterni. Tuttavia, è possibile che la riproduzione dei file audio che sono incorporati nei file FLA e associati ai fotogrammi nella linea temporale mediante lo strumento di creazione di Flash venga ripresa se l'animazione passa a un nuovo fotogramma.