ActionScript 3.0 :: Security.loadPolicyFile Does Not Work
Oct 4, 2010
URL...I'm trying to connect to the java server which sends back the policy data.From the IDE, absolutly nothing happens.Where can I start to know what's going on? I've looked at so many forum posts and exemples but nothing seems to correspond to my problem.the policy file allows all, the ports are open, the file and directory of my local swf are added to the trusted list in the flash global security settings.I'm using Security.loadPolicy File ("xmlsocket://xx.xx.xx.xx:xx"); with the right IP and open port which my server listens to.
I have a Flex 4 application the needs to retrieve XML from a web service and the web service does not sit on the same server as the Flex 4 application.
I was getting the Sandbox security violation #2048, I eventually figured out that I needed a crossdomain.xml file on the web service server which I put in C:Inetpubwwwroot. Tried again and all was good, it worked.But, I don't want the crossdomain.xml file to reside in the root of the server because I only want the crossdomain.xml file to affect the directory the web service is in.So I put the crossdomain.xml file into the directory where the web service resides and used Security.loadPolicyFile() but it does nothing, I get the Sandbox security error again. I checked with HTTP traffic with Fiddler2 and the request is being made successfully so I know that the application is getting the file, it just doesn't seem to be using it.
Is there something I'm missing? Below is the AS code I'm using, i tell the application to use the policy file in the application complete event handler, and i load the xml in the buttons click handler.
I'm trying to research some support for this but not getting very far, so I'm hoping you all can help. Is it possible to do something like the following:
I need to figure out a way to check if a crossdomain policy file has been loaded before initializing a certain component. The component won't work correctly if the crossdomain policy hasn't been loaded. Is there a way to do this? I can't figure out a way to get this working. This is the script I'm using:
Specifically, the developer of a web service I'm trying to call has installed a cross-domain policy file on his server at:[URL] So, in my SWF, I'm calling this:
[Code]....
Of course, it's not there, so it fails to load. (If the developer could install the file at the root, I wouldn't have this problem, so I wouldn't be using System.security.loadPolicyFile in the first place). It's not just in the IDE - when I test the app in Firefox with Firebug, I can see that the SWF is attempting to load the policy file from [URL].
I've stripped down the SWF so that it does nothing else but attempt to load the policy file from the subdirectory, and it still fails. So, I don't think this has to do with any idiosyncrasies of my specific app. Bottom line - does the System.security.loadPolicyFile work? Is there something else I need to do in conjunction with that call to get it to work? Or, is there something I'm doing wrong?
the PolicyFile's url is like this :[URL]and my restful webservices address is like this : [URL]crossdomain.xml include my flash's host url.the weird thing is flash still tried to load the [URL] like this first is right and response 200. the second response 400 .finally, the flash still told me SecrityError#2048
But when I got to my movie, I get: Security sandbox violation: LoaderInfo.content:[URL]cannot access [URL]. This may be worked around by calling Security.allowDomain Am I missing something? Does it not work with wildcards?I like AS3, but I really think they screwed up up the security model... and URLRequests...
This is a two fold query involving the same issue. As you know, if you attempt to use bitmap.draw() with an object (image or swf) that is not in the same domain as the calling swf the bitmap will not draw. As described by Adobe livedocs, if Security.allowDomain() is setup in the calling swf then draw() will work. However, I cannot get this method to work. I have supplied an example fla (make sure to get the .as for it too).
1. How do I get Security settings right to permit bitmap.draw() to work with objects from another domain? (not any domain - just the domain I define in the allowDomain parameter)
2. How do I setup an event handler (listener) for bitmap.draw() so I can detect when it doesn't draw?
I am connecting to a Java game server via an XMLSocket and serving the crossdomain.xml policy file via loadPolicyFile(). The problem is, the thing either works, or it doesn't Is there any way I can get any status information back from loadPolicyFile() ?file didn't load, file is invalid, anything. Is there a way to attach an onLoad handler to this? The documentation claims that this thing will wait for a response before it attempts any connections.
I have an SWF hosted on one server (let's say, url..),trying load data from a remote server (let's say,url...),in subdirectory /scripts /public/data.txt.In that subdirectory I have a file named crossdomain.xml, with the following content:
HTML Code: <?xml version="1.0"?> <cross-domain-policy>[code].....
Now this doesn't work. The SWF doesn't get access to data on that directory. It displays "undefined" instead of the expected value.
Notes:It does find the xml file.I know because when I try to load a file that doesn't exist it throws an error that says the file was not found.When the xml file is on the root directory (and there's no need to call the loadPolicyFile function),it works perfectly (displays the expected value),which means the xml file is fine.I thought maybe I need to wait for the loadPolicyFile to complete,but according to Adobe's help documents, all loading processes wait for the loadPolicyFile process to complete before rejecting a connection .Perhaps I used the loadPolicyFile function wrongly somehow,but I find it unlikely, since I copied the syntax from Adobe's help documents.
I have a swf one one server that is pulling content from an Amazon S3 server. I have set up, for now, a generic cross-domain policy to allow all domains access:[code]These seem to be playing nicely (for the most part) as my swf is loading json, xml, etc. files from the S3 server just fine now. What it's not doing right is loading swfs from the S3 server, when it tries to do that it throws this exception:[code]I assume this is because remote swfs could contain malicious executable code. Do I actually need to set the allowDomain to something or is there some other 'more correct' way of allowing my swf to load up other remote swfs?
I am getting a strange problem while I am making my release build swf.The swf is supposed to make some internal server calls and then display the data and also play it.When I make a release build swf and excute it, while making server calls it throws exceptions likeSecurityErrorHandler: [SecurityErrorEvent type="securityError" bubbles=falsecancelable=false eventPhase=2 text="Error #2170: Security sandbox violation:file:///Path to the swf/WebPlayer.swf cannot send HTTP headers to **Method Name to bring data from the server***]And after this nothing can be done as everything depends on the data from the server..I have updated my cross-domain.xml on the server to support the master-only policy file but that also didnt ..My cross-domain.xml is
I haven't fully grasped how the flash security model works, and now I've ran into a problem. I have a base SWF that loads a game loader swf, which in turn loads the actual game.What I'm trying to do is taking a current bitmap snapshot of the running game. This works fine before the loader swf has loaded the game. When the game is loaded, I get a security violation because the game has images pulled from facebook. Is this something that can be solved on my end, or restricted by security in the game swf?
I'm having trouble with an AS3 AMF RemoteObject request that is hosted on App Engine. I have a crossdomain.xml file in the root of the domain, and also one at the remoting endpoint.Here are the contents of the root crossdomain.xml:
Loading the swf file and testing it on my machine works just fine... I think that may have something to do with me having the debugger version of Flash Player. When I push it up to App Engine to make it public, other clients access it and get a Client.Error.MessageSend Channel.Security.Error error Error #2048 url: http:[url].......I am using Flex 4 beta, and the App Engine Python runtime. I have tried full wildcard in the crossdomain, and even accessing the data endpoint at a relative URL so as to avoid this error.
My SWF resides on domain A, is loaded by a web site on domain B and is trying to ping URL (URLLoader.load) on domain C. But I am getting "#2048: Security sandbox violation" .. why? Of course I have read the manual, I saw the security white paper but I do not understand it. Don't you know any blog or such where it is explained for dummies? With lots of examples and maybe a table showing what is allowed and what is not?
I get following error: Error #2044: Unhandled securityError:. text=Error #2048: Security sandbox violation: [URL] cannot load data from 192.168.3.5:4854. at TicTacToe_fla::MainTimeline/TicTacToe_fla::frame1() ". I tryed to solve this problem about 3 hours, but I failed I have the file crossdomain.xml in the same folder like my .swf file on the server with this content:
I'm a designer considering creating a video project with Flash. I've read some of the security threads on the board, but they are way over my head. I will have a simple Flash file with text and a dozen imported FLV video files.If I use the "protect from import" option, will that keep the videos from being stolen from within the swf? Or, is that just a mediocre hurdle that can be easily overcome by someone wanting to dig into my file?
I read about security issues in using GetURL.Is this only with javascript? If I use the getURL to open a blank window where all the HTML and swf are on the same server are those pages and swfs safe from injection, etc? I'm working in Flash 8 with AS 2.0.
i wrote a flash script that is embedded into an html page. The flash script (AS3), needs access to the users microphone and camera. I've seen on other websites when they want to use my camera/ microphone flash automatically pops up a box asking the user to permit.
In my case, even though in my global settings for my webpage it says "always ask" under permissions, flash doesnt ask me anything and just blocks the script from accessing the microphone. The script loads fine, just doesnt prompt for access and the user has to manually right click, and go to settings and put setting to "allow".
Searching for this topic on google is rather difficult as there is too much irrelevant stuff with the same keywords.
Edit: This is how i embed just in case im not doing it right.
I've got a Flash movie, loading data from an external URL. In fact, it's a RSS reader inside a banner.Everything works perfectly when the Flash movie and data URL are on the same domain. However, if the Flash movie is on another domain, Flash security kicks in.The manual says that I can allow a domain trough Security.AllowDomain()
system.Security.allowDomain("http://www.mydomain.abc/") xmlData = new XML(); xmlData.ignoreWhite = true;
I have a flash movie which loads some images dynamically, through hphp gateway files. It works fine accessing through [URL]but not through [URL] So it does not work without www.I am passing from HTML to Flash through params flashvars the path of the server, with www.
I am trying to create a security feature for my SWF's.I have a .txt file named security.txt.It has a variable called permissionGranted and is set to false
How would I go about checking this setting on a loaded SWF file? For example, I have parent swf A, loading child Swf B. Once swf B is loaded into child A, how do I check child B's local security setting property?
I have a script that uses a webcam as input the problem is my site needs to wait to do stuff untill the security box that allows the webcamera to be used has closed....I looked in the docs
am modifiying some flash banners with a simple link(fp 8, actionscript 2.0). Why do i get this flashplayer security warning when i click it?The original sample banners i'm working from don't have this. How can I prevent this from popping up, without going into adobe's settings?
I have a Flash swf file on one of my pages that's causing a Security sandbox violation. Basically it's trying to load a php file to do some things with mp3 files on my server. It works just fine, unless someone types in the url without the 'www' in front of it.
[URL]
the problem occurs. It still resolves to my site, but the domain appears different to the Flash app, and so the error gets thrown.