Ограничение междоменных запросов к ArcGIS Server

По умолчанию ArcGIS Server разрешает междоменные запросы, чтобы клиенты Adobe Flash Player, Microsoft Silverlight и Javascript могли вызвать сервисы сервера из любого домена.

Если вы хотите, чтобы клиенты Adobe Flash Player и Microsoft Silverlight могли выполнять запросы только из определенных доменов, вы можете поместить в корневой каталог вашего веб-сервера набор файлов политики клиентского доступа и включить в них только надежные домены. Если на вашем веб-сервере нет набора файлов политики клиентского доступа, вы можете легко установить его, выбрав эту опцию при установке ArcGIS Web Adaptor.

Если вы хотите, чтобы приложения Javascript могли выполнять запросы только из определенных доменов, вы можете настроить в ArcGIS Server список надежных доменов. Это можно сделать в Директории администратора ArcGIS Server (ArcGIS Server Administrator Directory).

Более подробно об ограничении запросов от приложений Adobe Flash Player, Microsoft Silverlight и Javascript см. в разделах ниже.

Ограничение запросов от приложений Adobe Flash Player и Microsoft Silverlight

Подключаемым модулям Adobe Flash Player и Microsoft Silverlight запрещен доступ к веб-сервисам, размещенным за пределами домена, в котором размещено веб-приложение. Единственным исключением является случай, когда на веб-сервере есть файл политики доступа клиентов, в котором разрешены междоменные запросы из домена данного веб-приложения. При работе с Adobe Flex файл политики клиентского доступа называется crossdomain.xml. При работе с Microsoft Silverlight файл обычно называется clientaccesspolicy.xml (хотя Silverlight может работать также с crossdomain.xml).

По умолчанию ArcGIS Server разрешает междоменные запросы. С этой целью при установке ArcGIS Server на ГИС-сервер устанавливается набор файлов политики доступа клиентов. Их нельзя удалять, открывать или изменять.

Если вы хотите запретить использование ваших веб-сервисов приложениями Flex и Silverlight, находящимися в других доменах, установите ArcGIS Web Adaptor и поместите отдельный набор файлов политики клиентского доступа в корневой каталог вашего веб-сервера. В программе установки Web Adaptor есть опция создания этих файлов. Независимо от того, как они были созданы, вы можете внести изменения в эти файлы, чтобы оставить в списке только надежные домены. Это снижает вероятность отправки неизвестным элементом управления Flash Player или Silverlight вредоносных команд в используемые веб-сервисы.

Ниже показан файл crossdomain.xml, установленный модулем Web Adaptor. Вы можете отредактировать его, чтобы установить дополнительные ограничения. О том, как создать или изменить этот файл, см. в разделе Спецификация файла междоменной политики Adobe.

файл crossdomain.xml, установленный модулем Web Adaptor:

<?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>

Ниже показан файл clientaccesspolicy.xml, установленный модулем Web Adaptor. Вы можете отредактировать его, чтобы установить дополнительные ограничения. О том, как изменить файл clientaccesspolicy.xml, см. в разделах Как сделать сервис доступным за границами домена и Ограничения безопасного доступа к сети в Microsoft Silverlight.

файл clientaccesspolicy.xml, установленный модулем Web Adaptor:

<?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>
ВниманиеВнимание:

Наличие или отсутствие файлов политики доступа клиентов не гарантирует безопасность вашего сайта от всех межсайтовых уязвимостей. Например, независимо от содержания файлов политики доступа клиентов, ваши сервисы могут быть вызваны напрямую через REST-интерфейс приложениями или скриптами, не выполняющимися в Flash Player или Silverlight.

Ограничение запросов от приложений Javascript

По умолчанию ArcGIS Server разрешает доступ к веб-сервисам любому приложению Javascript. Если вы хотите запретить использование ваших веб-сервисов некоторыми приложениями Javascript, находящимися в других доменах, вы можете настроить в ArcGIS Server список надежных доменов. Это снижает вероятность отправки неизвестным приложением вредоносных команд в используемые веб-сервисы.

Шаги:
  1. Откройте Директорию администратора ArcGIS Server и войдите от имени пользователя, имеющего права администратора сервера. Адрес URL в формате http://gisserver.domain.com:6080/arcgis/admin.
  2. Выберите system > handlers > rest > servicesdirectory.
  3. На странице Директория сервисов (Services Directory) выберите edit.
  4. В поле AllowedOrigins введите список разделенных запятыми имен машин и их доменов, которым разрешен доступ к вашим веб-сервисам, например, machine.esri.com, host.arcgis.com, gisserver.example.com.
    ПримечаниеПримечание:

    Использование символа * в качестве заменителя имени машины не поддерживается. В списке необходимо указывать полностью квалифицированное имя домена машины.

  5. Нажмите Сохранить (Save).
5/16/2014