2008-10-17 10 views
79

He estado leyendo que Adobe ha hecho crossdomain.xml stricter en flash 9-10 y me pregunto si alguien puede pegarme una copia de una que saben que funciona. Tener problemas para encontrar una muestra reciente en el sitio de Adobe.¿Alguien puede publicar una muestra crossdomain.xml bien formada?

+0

Esto puede parecer obvio peligrosamente, sino como un desarrollador de Flash con 10 años de experiencia, se puede decir que cada archivo de política He aplicado nunca ha fallado en no incluso fingió trabajar ... hasta hoy. Resulta que usted necesita CARGAR REALMENTE el archivo de política usted mismo. Los documentos hacen que suene como que Flash automáticamente buscará archivos crossdomain.xml antes de tener un error de SecuritySandbox. Por lo tanto, si tiene problemas, asegúrese de ESTAR CARGANDO el archivo de políticas: Security.loadPolicyFile ("http://www.example.com/crossdomain.xml") – 1owk3y

Respuesta

100

Esto es lo que he estado utilizando para el desarrollo:

<?xml version="1.0" ?> 
<cross-domain-policy> 
<allow-access-from domain="*" /> 
</cross-domain-policy> 

Este es un enfoque muy liberal, pero está muy bien para mi aplicación.

Como han señalado otros a continuación, tenga cuidado con los riesgos de esto.

+6

+1 por "enfoque muy liberal, pero está bien para las pruebas" – jcolebrand

+28

Esto funciona en cierto sentido, pero tenga en cuenta los riesgos: esto significa que * cualquier * sitio web puede enviar solicitudes a su sitio web en nombre del usuario, cookies y todo, y leer la respuesta sin problema. Para la mayoría de las aplicaciones web, esta es una gran vulnerabilidad de seguridad. Entonces, aunque este enfoque tiene su lugar, conozca los riesgos y adopte un enfoque de lista blanca estricta cuando sea necesario (que casi siempre es para aplicaciones de producción). – Matchu

+3

No ** use ** este desarrollo externo. Esto coincide exactamente con el ejemplo de un "crossdomain.xml mal configurado" del [proyecto PHP reforzado] (http://www.hardened-php.net/library/poking_new_holes_with_flash_crossdomain_policy_files.html#badly_configured_crossdomain.xml). –

35

Si está utilizando servicios web, también necesitará el elemento 'allow-http-request-headers-from'. Esta es nuestra política predeterminada de desarrollo, 'permitir todo'.

<?xml version="1.0" ?> 
<cross-domain-policy> 
    <site-control permitted-cross-domain-policies="master-only"/> 
    <allow-access-from domain="*"/> 
    <allow-http-request-headers-from domain="*" headers="*"/> 
</cross-domain-policy> 
+22

quizás debería mencionar si/cómo esto podría ser peligroso? – philfreo

+0

Dónde guardar este archivo XML –

+0

Siempre uso el esquema de Adobe. Aquí hay un ejemplo de uno suelto: [http://stackoverflow.com/a/26433744/257319](http://stackoverflow.com/a/26433744/257319) –

29

Tome un vistazo a Twitter de:

http://twitter.com/crossdomain.xml

<?xml version="1.0" encoding="UTF-8"?> 
<cross-domain-policy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.adobe.com/xml/schemas/PolicyFile.xsd"> 
    <allow-access-from domain="twitter.com" /> 
    <allow-access-from domain="api.twitter.com" /> 
    <allow-access-from domain="search.twitter.com" /> 
    <allow-access-from domain="static.twitter.com" /> 
    <site-control permitted-cross-domain-policies="master-only"/> 
    <allow-http-request-headers-from domain="*.twitter.com" headers="*" secure="true"/> 
</cross-domain-policy> 
9

En lugar de producción, esto parece conveniente:

<?xml version="1.0"?> 
<cross-domain-policy> 
<allow-access-from domain="www.mysite.com" /> 
<allow-access-from domain="mysite.com" /> 
</cross-domain-policy> 
5

Una versión de /crossdomain.xml solía ser embalado con el HTML5 Boilerplate que es el producto de muchos años de desarrollo iterativo y conocimiento comunitario combinado. Sin embargo, desde entonces se ha eliminado del repositorio. Lo he copiado literalmente aquí, e incluí un enlace a la confirmación a la que se eliminó a continuación.

<?xml version="1.0"?> 
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd"> 
<cross-domain-policy> 
    <!-- Read this: https://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html --> 

    <!-- Most restrictive policy: --> 
    <site-control permitted-cross-domain-policies="none"/> 

    <!-- Least restrictive policy: --> 
    <!-- 
    <site-control permitted-cross-domain-policies="all"/> 
    <allow-access-from domain="*" to-ports="*" secure="false"/> 
    <allow-http-request-headers-from domain="*" headers="*" secure="false"/> 
    --> 
</cross-domain-policy> 

eliminados en # 1881
https://github.com/h5bp/html5-boilerplate/commit/58a2ba81d250301e7b5e3da28ae4c1b42d91b2c2

Cuestiones relacionadas