public void AllDomains_NoDTD() { string policy = @"<?xml version='1.0'?><cross-domain-policy><allow-access-from domain='*'/></cross-domain-policy>"; FlashCrossDomainPolicy cdp = GetPolicy(policy); FlashCrossDomainPolicy.ApplicationUri = http; Assert.IsTrue(cdp.IsAllowed(new Uri("http://www.host.com"), null), ""); }
public void AllDomain_Secure() { string policy = @"<?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=""*"" secure=""true""/> </cross-domain-policy>"; FlashCrossDomainPolicy cdp = GetPolicy(policy); FlashCrossDomainPolicy.ApplicationUri = http; Assert.IsTrue(cdp.IsAllowed(new Uri("http://www.host.com"), null), ""); }
public void AllDomains_PermittedCrossDomainPolicies_ByFtpFilename() { string policy = @"<?xml version='1.0'?> <!DOCTYPE cross-domain-policy SYSTEM 'http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd'> <cross-domain-policy> <site-control permitted-cross-domain-policies='by-ftp-filename' /> <allow-access-from domain='*' /> </cross-domain-policy>"; FlashCrossDomainPolicy cdp = GetPolicy(policy); FlashCrossDomainPolicy.ApplicationUri = http; Assert.IsTrue(cdp.IsAllowed(new Uri("http://www.host.com"), null), "http / http"); }
public void AllDomains_PermittedCrossDomainPolicies_All() { // 'all' is the default value // http://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html#site-control-permitted-cross-domain-policies string policy = @"<?xml version='1.0'?> <!DOCTYPE cross-domain-policy SYSTEM 'http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd'> <cross-domain-policy> <site-control permitted-cross-domain-policies='all' /> <allow-access-from domain='*' /> </cross-domain-policy>"; FlashCrossDomainPolicy cdp = GetPolicy(policy); FlashCrossDomainPolicy.ApplicationUri = http; Assert.IsTrue(cdp.IsAllowed(new Uri("http://www.host.com"), null), "http / http"); }
static FlashCrossDomainPolicy GetPolicy(string policy) { using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(policy))) { return((FlashCrossDomainPolicy)FlashCrossDomainPolicy.FromStream(ms)); } }