Есть ли способ использовать WMS-хранилище с геосервера, но перед каждым запросом SQL запрашивать базу данных по причинам разрешения - PullRequest
0 голосов
/ 24 января 2020

У меня есть:

  1. OpenLayers
  2. Геосервер
  3. База данных
  4. Служба пространственных данных WMS

WMS данные расположены в сторонней пространственной службе (4) вдали от базы данных (3). Я хочу запросить мою базу данных, прежде чем пересылать WMS-запрос в эту пространственную службу.

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

После проверки разрешения данные WMS будут отфильтрованы согласно результатам запроса базы данных.

Можно ли это сделать с помощью Geoserver и как или нужен отдельный прокси? (Я знаю, что можно сделать SQL представление для геометрии, которая существует в БД, но что делать в этой ситуации, когда геометрия находится в другом месте.)

Спасибо за любую помощь!

1 Ответ

1 голос
/ 25 января 2020

То, что вы хотите, немного неясно, но похоже на то, для чего предназначено расширение GeoFence , оно работает с внутренней или внешней установкой GeoFence .

GeoFence предлагает альтернативу подсистеме GeoServer Security GeoServer, позволяющую использовать гораздо более сложные конфигурации безопасности, такие как правила, сочетающие ограничения данных и обслуживания. Он использует модель клиент-сервер, и этот плагин предоставляет только клиентский компонент. Он должен подключаться либо к внешнему серверу Geofence, либо использоваться в сочетании со встроенным GeoServer сервером Geofence. Внутренний сервер Geofence.

...