Пять шагов создания набора политик для WMS




1) Создание набора политик и загрузка ресурсов

Откройте Администратор и выберите Policy Management. В дереве выберите узел WMS и щёлкните слева на Create New Policy Set.

В открывшемся диалоговом окне вы можете задать заголовок и дать описание набора политик WMS, который будет защищён. Заголовок будет показан в дереве политик для помощи в быстром размещении набора политик для конкретного сервиса. Для предоставления информации о цели набора политик должно использоваться описание. Выберите сервис в окошке Защищённый сервис (Protected Service), который вы ранее сконфигурировали на закладке Защищённые сервисы (Protected Services). Или, выберите Others в окне выбора и введите URL в поле WMS URL вручную.

Затем щёлкните на Получить слои (Get Layers). Это приведёт к тому, что на сервис будет отправлен запрос GetCapabilities. В случае успеха сервис загружается (через URL) вместе с его слоями в качестве источников. Созданные впоследствии политики могут обращаться к этим ресурсам. Затем отображён обзор доступных ресурсов (слоёв) наряду со средствами создания и редактирования прав для этого сервиса.

Внимание! рекомендуется срочно создать один набор политик для каждого защищённого сервиса, поскольку наличие нескольких наборов политик на один защищённый сервис может привести к неожиданному поведению программы. По этой причине securityManager выдаст предупреждающее сообщение, если предпринимаются попытки сохранить набор политик для сервиса, для которого уже определён другой набор политик. Однако, не смотря на это, securityManager допускает определение нескольких наборов политик для каждого сервиса.

2) Определение неограниченного доступа для роли Internal

Для этого примера необходимо, чтобы в менеджере пользователя была создана роль 'Internal' и чтобы она была присвоена хотя бы одному пользователю.

Чтобы создать политику в пределах нового набора политик, щёлкните Новый (New) в области Policies. В открывшемся диалоговом окне введите имя и описание создаваемой политики. Рекомендуется выбирать имена так, чтобы сразу было понятно, кто пытается получить доступ к какому ресурсу с этой политикой, например, 'Internal_allowed_all' или 'External_allowed_all_except_GetFeatureInfo'. Чтобы дать более подробное описание политики, можно также использовать поле Описание (Description).

Первое, что нужно сделать - это установить роли, к которым будет применяться эта политика. Если не стоит отметка для опции «Все роли» (All Roles), отображаются доступные роли.

Следующий шаг - определение ресурсов безопасного сервиса, для которого применяется эта политика. Если выбрана опция «Все ресурсы» (All Resources), относительно ресурсов нет никаких ограничений, а отдельные слои не отображаются в интерфейсе Администратора. Если снять отметку, будут отображены отдельные ресурсы, их можно будет выбирать в отдельности.

Примечание: URL безопасного сервиса является частью ресурсов для всех типов наборов политик. Если вы не включите этот ресурс в выборку, доступ всегда будет отклонён напрямую.

Теперь определите действия, для которых будет применяться данная политика. Как правило, действия доступны в соответствии с операциями, которые могут быть выполнены на сервисе данного типа. В случае WMS это: GetMap, GetCapabilities и GetFeatureInfo. Опять же, в этом случае вы сможете определить, будет ли право предоставлено для всех или для отдельных действий, щёлкнув на соответствующей опции.

В разделе Obligations, вы можете установить обязательства, с которыми связана политика. Чтобы установить отображение уведомления об авторском праве, см. следующий шаг по созданию второй политики в данном наборе политик. Чтобы установить пространственные обязательства, см. тему 'Создание политик с пространственной авторизацией' ниже в этом разделе.

В разделе Conditions, вы можете ограничить политику таким образом, чтобы она подходила только для определённого отрезка времени.

Если вы щёлкните на 'Save policy', политика добавится в набор политик и сохранится в базе данных политик. С этого момента он будет включён во все решения относительно политик, сделанные PDP.

3) Определение политик, ограничивающих доступ пользователей с ролью «Гость» (Guest)

Роль Guest создаётся в securityManager как стандартная. Все шлюзы гостей картированы в эту роль.

Чтобы создать новую политику, выберите созданный набор политик и щёлкните на 'Новый' в нижней части «Политики». В появившемся диалоговом окне введите имя и описание, как вы делали это ранее.

В следующем разделе описано, как установить следующую политику для всех пользователей роли «Гость» (Guest).

  • Сервис можно загрузить и показать на картах, аналогично слоям 'Bundesländer' (федеральные государства) и 'Kreise' (округа).
  • Запрос пространственных объектов (GetFeatureInfo) не разрешён.
  • Использование ограничено периодом 1.1.06 - 1.6.06.
  • Уведомление об авторском праве должно быть включено во все графические элементы карты.

Чтобы осуществить это, необходимо сконфигурировать следующие значения:

Роли: Выбор роли guest

Ресурсы: место выбора URL сервиса, наряду со слоями 'Bundesländer' и 'Kreise'. Идентификатор слоя показан в квадратных скобках.

'Действия': в примере выше выбраны только 'GetMap' и 'GetCapabilities', тогда как 'GetFeatureInfo' не разрешён.

В разделе 'Conditions – Policy only applies when', установлено уведомление об авторских правах и введён соответствующий текст: '(c) by con terra'.

В разделе Conditions запись изменена, и, дополнительно, использование ограничено во времени. Обратите внимание, что дата используется в форме YYYY-MM-DD (например, 2010-01-10 для 1 января 2010).

Теперь сохраните политику.

4) Определение порядка политик

Пользователь, возможно, имеет более одной роли. Например, в примере выше, если мистер Майер имеет и роль 'Guest' и роль 'internal', вопрос в том, какой политикой обладает мистер Майер для сервиса? Ответ предоставляется порядком политик в наборе. Если принимается решение относительно политики, в списке отдельных политик в наборе осуществляется поиск сверху вниз, пока не будет найдена подходящая политика, разрешающая доступ. Все последующие политики, которые могут предоставить доступ к другим ресурсам, не принимаются во внимание. По этой причине важно удостовериться, что политики с бóльшим значением всегда расположены в верхней части списка.

Чтобы изменить порядок, воспользуйтесь стрелками справа от списка всех политик. Когда в порядок политик вносятся изменения, необходимо сохранить набор политик.

5) Дополнительная информация

  • Политики можно комбинировать

Другими словами, более сложные политики могут быть выражены только с использованием Администратора securityManager в форме объединения нескольких политик. Например, если нужно установить политики, которые только позволяют, чтобы GetFeatureInfo применялся к слою A, но позволяют, чтобы GetMap и GetCapabilities применялись ко всем слоям, необходимо создать две политики.

Политика 1: Независимо от ресурса, GetMap и GetCapabilities разрешены для роли X.

Политика 2: Для слоя A, GetFeatureInfo разрешён для роли X.

  • Доступ к незапрещённым ресурсам

В целом, политика должна быть сформирована таким образом, чтобы клиенты не размещали запросы, содержащие неразрешённые ресурсы. В случае WMS это означает, что, поскольку доступ не разрешён для слоя через GetMap, доступ через GetCapabilities тоже не разрешён. Клиенты, которые реагируют динамически на слои, содержавшиеся в Capabilities, который предлагает отобразить их на карте, затем не могут отображать эффективно непригодные слои. Однако, в определенных случаях, может быть желательно для некоторых слоев не появляться в Capabilities, хотя клиенты, которые знают об их существовании, могут получить к ним доступ. Работа всех перехватчиков securityManager, как правило, осуществляется таким образом, что запрос или ответ, требующий доступа к неавторизированным ресурсам, модифицируются, чтобы позволить этим ресурсам быть отфильтрованными. В таком случае клиент получит только сообщение об ошибке, что оно не обладает достаточными правами, авторизированный ресурс не должен оставаться в запросе или ответе.

  • Иерархические ресурсы (слои)

Администратор предоставляет простой, не иерархичный список слоёв и типов объектов. WMS позволяет придать слоям иерархическую структуру, чтобы обеспечить возможность размещения их по группам. Если Вы используете такой групповой слой с политикой, использование этого слоя автоматически даёт доступ ко всем зависимым слоям, независимо того, были ли эти слои заблокированы или нет.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-04-01 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: