Restricción de solicitudes de dominio cruzado en ArcGIS 10.1 for Server
Por defecto, ArcGIS 10.1 for Server permite solicitudes de dominio cruzado para que los plug-ins de Adobe Flash Player y Microsoft Silverlight puedan invocar los servicios del servidor desde cualquier dominio. Si desea restringir las solicitudes desde otros dominios, puede colocar un conjunto de archivos de política de acceso de clientes a nivel de raíz del servidor Web y editarlos para enumerar solo los dominios en los que confía. Si aún no tiene un conjunto de archivos de política de acceso de clientes en su servidor Web, una forma fácil de obtenerlos es seleccionar que se instalen como parte de la configuración de ArcGIS Web Adaptor.
¿Qué son los archivos de política de acceso de clientes y cómo se relacionan con ArcGIS 10.1 for Server?
A los plug-ins de Adobe Flash Player y Microsoft Silverlight no se les permite acceder a los servicios Web que residen fuera del dominio donde se origina la aplicación Web. La única excepción es si el servidor Web al que se está accediendo incluye un archivo de política de acceso de clientes que indique que el dominio de la aplicación Web está aprobado para solicitudes de dominio cruzado. Cuando trabaja con Adobe Flex, el archivo de política de acceso de clientes se denomina crossdomain.xml. Cuando trabaja con Microsoft Silverlight, el archivo es por lo general clientaccesspolicy.xml (aunque Silverlight también puede trabajar con crossdomain.xml).
Por defecto, ArcGIS 10.1 for Server permite solicitudes de dominio cruzado. Un conjunto de archivos de política de acceso de clientes se coloca en su servidor SIG para este fin cuando instala ArcGIS 10.1 for Server. Estos archivos no se deben quitar, abrir o modificar.
Si desea evitar que las aplicaciones Flex y Silverlight alojadas en otros dominios utilicen los servicios Web, debe instalar el ArcGIS Web Adaptor y colocar un conjunto separado de archivos de política de acceso de clientes a nivel de raíz de su servidor Web. La instalación del adaptador Web puede crear, de manera opcional, estos archivos. Independientemente de cómo los obtenga, puede modificar este conjunto de archivos para incluir una lista de los dominios en los que confía. Esto reduce la posibilidad de que un control Flash Player o Silverlight desconocido pudiera enviar comandos perjudiciales a sus servicios Web.
A continuación se muestra el archivo crossdomain.xml instalado mediante el adaptador Web. Puede modificarlo para que sea más restrictivo. Para obtener más información acerca de cómo modificar este archivo consulte la especificación del archivo de política de dominio cruzado de Adobe.
crossdomain.xml instalado mediante el adaptador Web.
<?xml version="1.0" ?> <cross-domain-policy> <allow-access-from domain="*"/> <site-control permitted-cross-domain-policies="all"/> <allow-http-request-headers-from domain="*" headers="*"/> </cross-domain-policy>
A continuación encontrará el archivo clientaccesspolicy.xml instalado mediante el adaptador Web. Puede modificarlo para que sea más restrictivo. Para obtener información sobre cómo modificar un archivo clientaccesspolicy.xml, consulte Hacer que un servicio esté disponible a través de los límites de dominio y restricciones de acceso de seguridad de red en Microsoft Silverlight.
clientaccesspolicy.xml instalado mediante el adaptador Web.
<?xml version="1.0" encoding="utf-8" ?> <access-policy> <cross-domain-access> <policy> <allow-from http-request-headers="*"> <domain uri="*"/> </allow-from> <grant-to> <resource path="/" include-subpaths="true"/> </grant-to> </policy> </cross-domain-access> </access-policy>
Los archivos de política de acceso de clientes, o la falta de ellos, no garantiza que el sitio está a salvo de todas vulnerabilidades del sitio. Por ejemplo, las aplicaciones o secuencias de comandos que no se ejecutan en Flash Player o Silverlight podrían invocar los servicios directamente a través de REST, independientemente del contenido de los archivos de política de acceso de clientes.