Documentation Flash CS3 |
|||
| Programmation avec ActionScript 3.0 > La sécurité dans Flash Player > Contrôle de l'accès aux scripts dans une page Web hôte | |||
ActionScript 3.0 permet l'exploitation de scripts externes grâce aux API suivantes :
flash.system.fscommand()flash.net.navigateToURL() (en cas de spécification d'une instruction de script, telle que navigateToURL("javascript: alert('Hello from Flash Player.')")flash.net.navigateToURL() (lorsque le paramètre window est défini sur "_top", "_self" ou "_parent")ExternalInterface.call()Pour les fichiers SWF exécutés localement, les appels à ces méthodes aboutissent uniquement si le fichier SWF et la page Web qui le contient (le cas échéant) se trouvent dans le même sandbox de sécurité. Ils échouent si le contenu provient du sandbox local avec réseau ou local avec système de fichiers.
Le paramètre AllowScriptAccess du code HTML qui charge le fichier SWF permet de contrôler la fonctionnalité de script externe à partir d'un fichier SWF.
Définissez ce paramètre dans le code HTML de la page Web qui accueille le fichier SWF, dans la balise PARAM ou EMBED.
Le paramètre AllowScriptAccess peut prendre l'une des trois valeurs : "always", "sameDomain" ou "never".
AllowScriptAccess est "sameDomain", l'utilisation de script externe est uniquement autorisée si le fichier SWF et la page Web se trouvent dans le même domaine. Il s'agit de la valeur par défaut pour le contenu AVM2.AllowScriptAccess a pour valeur "never", les scripts externes échouent systématiquement.AllowScriptAccess a pour valeur "always", les scripts externes réussissent systématiquement.Si le paramètre AllowScriptAccess n'est pas défini pour un fichier SWF dans la page HTML, sa valeur par défaut est "sameDomain" pour le contenu AVM2.
Ci-après est illustrée la définition de la balise AllowScriptAccess dans une page HTML :
<object id='MyMovie.swf' classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.adobe.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0' height='100%' width='100%'> <param name='AllowScriptAccess' value='never'/> <param name='src' value=''MyMovie.swf'/> <embed name='MyMovie.swf' pluginspage='http://www.adobe.com/go/getflashplayer' src='MyMovie.swf' height='100%' width='100%' AllowScriptAccess='never'/> </object>
Le paramètre AllowScriptAccess peut empêcher un fichier SWF hébergé dans un domaine d'accéder au script d'une page HTML provenant d'un autre domaine. La sécurité des scripts situés dans une page HTML peut être garantie en utilisant AllowScriptAccess="never" pour tous les fichiers SWF hébergés par d'autres domaines.
Pour plus d'informations, voir les entrées suivantes dans la Référence du langage et des composants ActionScript 3.0 :
flash.system.fscommand()flash.net.navigateToURL()call() de la classe ExternalInterfaceFlash CS3
M'envoyer un message électronique lorsque des commentaires sont ajoutés à cette page | Rapport de commentaire
Page en cours: http://livedocs.adobe.com/flash/9.0_fr/main/00000360.html