Разграничение доступа при Интернет-подключениях выполняется путем назначения прав доступа пользователям и группам пользователей (Roles). Назначение прав доступа к сервисам представляется возможным только для всех видов доступа сразу (SOAP, REST, OGC), то есть, либо у пользователя есть доступ к сервису, либо его нет. Аналогично, можно разрешить или запретить доступ к веб-приложению (создаваемому при помощи Manager), нельзя разграничивать доступ к отдельным операциям.
ArcGIS Server поддерживает следующие системы управления пользователями:
· Windows Domain. Описание настройки прав доступа.
· Microsoft SQL Server. Описание настройки прав доступа.
· Управление пользователями через ASP.NET Membership framework (СУБД, XML, Active Directory, LDAP)
Возможные способы аутентификации ArcGIS Server 9.3 for .NET (аутентификация — сервис контроля доступа, осуществляющий проверку регистрационной информации пользователя):
· Windows authentication (стандартная Windows-аутентификация). При таком способе аутентификации возможна работа только Windows-пользователей, а ответственным за аутентификацию является веб-сервер (IIS). При подключении к серверу, находящемуся в той же локальной сети, данные аутентификации передаются автоматически, то есть окно ввода идентификационной информации не отображается.
· HTTP Basic and Digest (аутентификация по HTTP). Аналогично Windows authentication, при таком способе аутентификации возможна работа только Windows-пользователей, а ответственным за аутентификацию является веб-сервер (IIS). Диалог ввода идентификационной информации отображается всегда.
· Token-based authentication (аутентификация на основе уникального ключа). Только для веб-сервисов, не пригодна для веб-приложений. Способ аутентификации подходит для всех видов систем управления пользователями. Подробнее об использовании ключей.
· Forms-based authentication (форма ввода идентификационной информации). Применяется для веб-приложений.
Поддерживать несколько способов аутентификации возможно при помощи создания нескольких инстанций веб-сервера, привязанных к одному ГИС-серверу.
Для повышения безопасности при Интернет-подключениях рекомендуется использовать шифрование Secure Sockets Layer (SSL).
Основной каталог для хранения информации о настройках безопасности ГИС-сервера — <ArcGIS WebInstance>\Security [2]. При изменении настроек безопасности в приложении Manager, они сохраняются в файле web.config в этом каталоге и дублируются в одноименные файлы в каталогах Rest, Services, Tokens, а также в web.config всех защищаемых веб-приложений.
4.1 Разграничение доступа к веб-сервисам
Для разрешения или запрещения веб-доступа к сервису можно воспользоваться приложением Manager. Следует выбрать нужный сервис в разделе Manage Services, редактировать его свойства (команда Edit) и перейти на закладку Capabilities. Переключатель Enable web access определяет, разрешен ли веб-доступ к сервису.
Права доступа к веб-сервисам различных пользователей и групп пользователей определяются также при помощи приложения Manager.
Внимание! Настройки доступа к веб-сервисам, описанные в этом разделе, влияют только на пользователей, подключающихся через Интернет (по ссылке http://<server>/<instance>/services [2]). Права доступа для локальных пользователей (подключаются по имени SOM-машины) определяются по правилам, описанным в разделе Защита при локальных подключениях.
Для разграничения доступа к веб-сервисам следует:
1. Настроить каталог пользователей и ролей в ArcGIS Server, используя раздел Security приложения Manager.
2. Определить пользователей, имеющих возможность доступа к каждому сервису по отдельности (или к каталогу сервисов). Services > Manage Services > Редактировать Permissions в приложении Manager.
3. Включить Security for GIS Services в разделе Security > Settings приложения Manager. Этот шаг можно выполнять только после выполнения шагов 1 и 2, в противном случае, новые разрешения не будут применены. Важно отметить, что отключить Security for GIS Services в приложении Manager нельзя. Однако это можно сделать вручную при помощи редактирования конфигурационных файлов.
4.1.1 Определение разрешенных операций
Каждый сервис может быть ограничен предоставлением только определенного типа операций. Перечень предоставляемых операций распространяется на всех клиентов сервиса.
Для определения типов операций сервиса можно воспользоваться приложением Manager. Следует выбрать нужный сервис в разделе Manage Services, редактировать его свойства (команда Edit) и перейти на закладку Capabilities. Переключатель Enable web access должен быть включен. Также можно определить типы предоставляемых сервисом операций сразу при создании сервиса.
Для сервисов Map service возможно разрешать/ запрещать группы операций Map, Query, Data, которые включают в себя следующие команды:
Map | Query | Data |
GetDocumentInfo GetLegendInfo GetMapCount GetMapName GetDefaultMapName GetServerInfo GetSupportedImageReturnTypes ExportMapImage IsFixedScaleMap ToMapPoints FromMapPoints HasSingleFusedMapCache GetTileCacheInfo GetMapTile HasLayerCache GetLayerTile GetVirtualCacheDirectory GetCacheName ComputeScale ComputeDistance | Identify QueryFeatureCount QueryFeatureIDs QueryHyperlinks GetSQLSyntaxInfo | Find QueryFeatureData |
По умолчанию доступны все виды операций.
Для сервисов Geocode возможно разрешать/ запрещать группы операций Geocode, ReverseGeocode, которые включают в себя следующие команды:
Geocode | ReverseGeocode |
GeocodeAddress GeocodeAddresses StandardizeAddress FindAddressCandidates GetAddressFields GetCandidateFields GetIntersectionCandidateFields GetStandardizedFields GetStandardizedIntersectionFields GetResultFields GetDefaultInputFieldMapping GetLocatorProperties | ReverseGeocode |
По умолчанию доступны все виды операций.
Для сервисов Geodata возможно разрешать/ запрещать группы операций Query, Extraction, Replication, которые включают в себя следующие команды:
Query | Extraction | Replication |
Get_Versions Get_DefaultWorkingVersion Get_DataElements Get_MaxRecordCount TableSearch GetNextResultPortion Get_Replicas Get_WrappedWorkspaceType | ExpandReplicaDatasets ExtractData | CreateReplica ExportAcknowledgement ExportReplicaDataChanges ImportAcknowledgement ImportReplicaDataChanges ReExportReplicaDataChanges UnregisterReplica ImportData |
По умолчанию доступны группы операций Query и Extraction.
Для сервисов Globe возможно разрешать/ запрещать группы операций Globe, Animation, Query, которые включают в себя следующие команды:
Globe | Animation | Query |
Get_Version Get_LayerCount Get_LayerInfos Get_LegendInfos Get_Config Get_MQT Get_Configuration Get_Tile Get_Symbols Get_Textures Get_VirtualCacheDirectory | Get_Animation | Identify Find |
По умолчанию доступны все виды операций.
4.1.2 Размещение сервисов по каталогам
Организовав структуру каталогов для сервисов (новая возможность в ArcGIS Server 9.3), можно определять права доступа к целым группам сервисов. Для организации структуры каталогов сервисов можно воспользоваться приложениями ArcGIS Server Manager (раздел Services) или ArcGIS Catalog (раздел GIS Servers —> <server>).
При назначении правил доступа для каталога сервисов, все включенные в этот каталог сервисы унаследуют соответствующие права, а предыдущие настройки будут утрачены. Подробнее о наследовании разрешений.
Важно отметить, что созданные каталоги уже нельзя переименовать, а созданные сервисы переносить в другой каталог. Следует продумать структуру каталогов заранее. Однако, предположительно, это можно сделать «вручную», «поколдовав» над директорией, где находятся описание всех сервисов: <ArcGIS>\server\user\cfg\ [2].
Подробнее о размещении сервисов по каталогам.
4.1.3 Настройка прав доступа при помощи редактирования конфигурационных файлов
Настройки прав доступа к сервисам хранятся в директории <ArcGIS>\server\user\cfg\ [2] в XML-файлах с расширением .SEC. Сервис может иметь собственный конфигурационный файл настроек безопасности с именем <service>.<service_type>.sec, или наследовать настройки безопасности своего каталога, которые хранятся в файлах Folder.sec.
Настройка прав доступа может быть осуществлена при помощи редактирования конфигурационных файлов .SEC, однако рекомендуется использовать для этих целей приложение Manager.
По заявлениям ESRI, редактирование .SEC-файла незамедлительно приводит к изменению настроек безопасности [1]. Однако Manager отражает изменения только после перезапуска SOM.
При помощи редактирования конфигурационного файла можно, как и при помощи приложения Manager, разрешить или запретить доступ к сервису группам пользователей (Roles), размещенным на сервере и в домене. Важно корректно указывать названия групп пользователей.
Пример конфигурационного файла:
<
Permissions
>
<Allowed>
<Principal>Editors</Principal>
<Principal>Managers</Principal>
</Allowed>
<Denied>
<Principal>Users</Principal>
</Denied>
</Permissions>
Подробнее о конфигурационных файлах .SEC.
4.2 Разграничение доступа к веб-приложениям
Права доступа к веб-приложениям различных пользователей и групп пользователей определяются при помощи приложения Manager, или при помощи инструмента Web Site Administration Tool (WSAT) в Microsoft Visual Studio.
Для разграничения доступа к веб-приложениям следует:
1. Настроить каталог пользователей и ролей в ArcGIS Server, используя раздел Security приложения Manager.
2. Определить возможность доступа к каждому приложению по отдельности. Applications > Web Applications > Редактировать Permissions в приложении Manager.
Важно отметить, что пользователь, имеющий доступ к веб-приложению, получает данные всех веб-сервисов этого веб-приложения, вне зависимости от того, имеет ли он доступ к этим веб-сервисам.
Скачать PDF-версию с оригинальным оформлением. © Для использования опубликованных на ресурсе материалов достаточно упоминания имени автора и адреса первоисточника. Дата обновления: 2008-11-01.
Комментариев нет:
Отправить комментарий