Skip To Content

Restricción de solicitudes de dominio cruzado en ArcGIS Server

En este tema

De manera predeterminada, ArcGIS Server admite solicitudes de dominio cruzado para que los clientes de Adobe Flash Player, Microsoft Silverlight y Javascript puedan invocar los servicios del servidor desde cualquier dominio.

Si desea restringir las solicitudes a dominios concretos para Adobe Flash Player y Microsoft Silverlight, puede colocar un conjunto de archivos de política de acceso de clientes en el nivel de raíz del servidor web y editarlos para mostrar 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.

Si desea restringir las solicitudes a dominios concretos para las aplicaciones de Javascript, puede configurar ArcGIS Server de modo que solo confíe en ciertos dominios. Para ello, debe usar el Directorio del ArcGIS Server Manager.

Vea las secciones siguientes para aprender a restringir las solicitudes de las aplicaciones de Adobe Flash Player, Microsoft Silverlight y Javascript.

Restringir las solicitudes de las aplicaciones de Adobe Flash Player y Microsoft Silverlight

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 se trabaja con Adobe Flex, el archivo de política de acceso de clientes se denomina crossdomain.xml. Cuando se trabaja con Microsoft Silverlight, el archivo es normalmente clientaccesspolicy.xml (aunque Silverlight también puede funcionar con crossdomain.xml).

Por defecto, ArcGIS 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 Server. Estos archivos no se deben quitar, abrir o modificar.

Si desea evitar que las aplicaciones de Flex y Silverlight alojadas en otros dominios utilicen los servicios Web, debe instalar ArcGIS Web Adaptor y colocar un conjunto independiente de archivos de política de acceso de clientes en el nivel 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 Habilitar un servicio más allá de los límites de un 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>
Precaución:

La existencia de archivos de política de acceso de clientes o la falta de ellos no garantiza que el sitio esté a salvo de todas vulnerabilidades procedentes de otros sitios. 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.

Restringir solicitudes de aplicaciones de Javascript

De manera predeterminada, ArcGIS Server permite a todas las aplicaciones de Javascript acceder a los servicios web. Si desea restringir el uso de sus servicios web por parte de ciertas aplicaciones de Javascript alojadas en otros dominios, puede configurar ArcGIS Server para incluir una lista de los dominios en los que confía. Esto reduce el riesgo de que una aplicación desconocida pueda enviar comandos perjudiciales a sus servicios web.

  1. Abra el Directorio del ArcGIS Server Manager e inicie sesión con un usuario que tenga acceso administrativo en el servidor. La URL tiene el formato http://gisserver.domain.com:6080/arcgis/admin.
  2. Haga clic en system > handlers > rest > servicesdirectory.
  3. En la página Directorio de servicios, haga clic en editar.
  4. En el campo AllowedOrigins, especifique una lista separada por comas de equipos y nombres de dominio que pueden acceder a sus servicios web; por ejemplo, machine.esri.com, host.arcgis.com, gisserver.example.com.
    Nota:

    No se admite el uso de caracteres comodín * como sustitutos del nombre del equipo. Debe especificar el nombre de dominio completo del equipo en la lista.

  5. Haga clic en Guardar.