La méthode ActionScript Flash MX System.security.loadPolicyFile(url_du_fichier_droit), va vous permettre d'autoriser une animation swf à accèder aux variables d'un fichier externe d'un autre domaine (par exemple quand vous faites un loadVariables).
On utilise System.security.loadPolicyFile() dans le cas où l'animation swf et le fichier externe contenant les variables ne sont pas dans le même domaine.
System.security.loadPolicyFile("http://www.mondomaine.com/droit.xml")
- url_du_fichier_droit, url du fichier xml de droit.
Il doit se trouver dans le même domaine que le fichier externe contenant les variables.
Il faut obligatroirement le player 7,0,19,0; sinon flash fait une erreur de compilation et je suppose que l'internaute doit avoir cette version.
Plus d'infos sur le site macromedia
voir aussi : Les Bases > Les généralités | Sécurité -> La sécurité dans flash player
Le fichier de droit est un fichier de type xml.
Il doit se trouver sur dans le même domaine que le fichier externe contenant les variables.
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="zoneflashmx.free.fr" />
</cross-domain-policy>
allow-access-from domain="" est le seul élément que vous ayez a changer. Il vous suffit de spécifier le domaine qui a droit de recupérer les variables.
Vous pouvez spécifier plusieurs allow-access-from domain="" :
<cross-domain-policy>
<allow-access-from domain="zoneflashmx.free.fr" />
<allow-access-from domain="zoneflashmx.wanadoo.fr" />
</cross-domain-policy>
Pour les transactions sécurisées (HTTPS) un attribut secure peut être rajouté à la balise allow-access-from. Cet attrubut peut prendre une valeur Boolean (true/false).J'ai pas très bien compris comment cela marchait, allez sur le site de macromédia pour plus d'info.
<allow-access-from domain="zoneflashmx.wanadoo.fr" secure="false" />