nextgis / nextgisweb

Web GIS framework by NextGIS
https://nextgis.com/nextgis-web/
GNU General Public License v3.0
216 stars 95 forks source link

Аутентификация в WMS сервисе #331

Closed BishopGIS closed 8 years ago

BishopGIS commented 9 years ago

Сейчас возможно подключать только анонимные WMS сервисы. Необходимо дать возможность указать логин и пароль для получения слоев с закрытых WMS сервисов

dezhin commented 9 years ago

Вообще эта возможность есть изначально, поскольку в WMS аутентификация передается через стандартную HTTP аутентификацию, которая в свою очередь обрабатывается ngw точно так же как и аутентификацию через куки.

Наверное проблема в чем-то другом.

BishopGIS commented 9 years ago

Возможно я не правильно выразился. Имеется в виду ситуация когда мы подключаемых внешний wms, а он запаролен. Я не нашёл где указать логин и пароль.

dezhin commented 9 years ago

Аааа, вот о чем речь. А в URL логин пароль указывать не пробовали?

BishopGIS commented 9 years ago

Ой. Нет. Но с точки зрения юзера, все таки поля ввода иметь неплохо.

BishopGIS commented 9 years ago

Проверил с вставкой логина/пароля в url - не работает:

Неизвестная исключительная ситуация InvalidURL, cериализатор wmsclient_connection, атрибут capcache.
drnextgis commented 9 years ago

Реализовано в https://github.com/nextgis/nextgisweb/pull/338

snpotapov commented 8 years ago

При добавлении сервиса Росреестра http://maps.rosreestr.ru/arcgis/services/Cadastre/CadastreWMS/MapServer/WMSServer? возникает ошибка:

В ходе выполнении операции произошла неожиданная ошибка. Сообщение об ошибке Неизвестная ошибка 'XMLSyntaxError' в сериализаторе 'wmsclient_connection', атрибут 'capcache'.

Сервис анонимный

drnextgis commented 8 years ago

Причина в этом https://github.com/nextgis/nextgisweb/issues/415

snpotapov commented 8 years ago

И чего делать? Сервис рабочий.

Воскресенье, 17 января 2016, 7:49 -08:00 от Denis Rykov notifications@github.com:

Причина в этом #415 — Reply to this email directly or view it on GitHub .

drnextgis commented 8 years ago

Править OWSLib, чтобы тот умел передавать пользовательские заголовки в запросах.

drnextgis commented 8 years ago

@snpotapov проблема решена в https://github.com/nextgis/nextgisweb/commit/0932f3d980ca1ce6e08638c539f25bf7348bd581. Правда пока не вышел релиз OWSLib, он не доступен из PyPI, поэтому его нужно ставить с GitHub репозитория OWSLib.

snpotapov commented 8 years ago

В какой версии OWSLib проблема решена? с 0.11.0  такая же ситуация..... соединение не создается.

Вторник, 12 апреля 2016, 7:36 +03:00 от Denis Rykov notifications@github.com:

@snpotapov проблема решена в 0932f3d . Правда пока не вышел релиз OWSLib, он не доступен из PyPI, поэтому его нужно ставить с GitHub репозитория OWSLib . — You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub

drnextgis commented 8 years ago

А я же там написал в сообщении к коммиту: This changes requires latest OWSLib (not yet released). Поставьте OWSLib из репозитория.

snpotapov commented 8 years ago

Понял

Понедельник, 18 апреля 2016, 10:20 +03:00 от Denis Rykov notifications@github.com:

А я же там написал в сообщении к коммиту: This changes requires latest OWSLib (not yet released). Поставьте OWSLib из репозитория. — You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub

snpotapov commented 8 years ago

Сервис Росреестра прописать стало возможно , но при отображении чего-либо вылезает это: Exception when serving /api/component/render/tile Traceback (most recent call last):   File "/home/master/ngw/env/local/lib/python2.7/site-packages/waitress/channel.py", line 338, in service     task.service()   File "/home/master/ngw/env/local/lib/python2.7/site-packages/waitress/task.py", line 169, in service     self.execute()   File "/home/master/ngw/env/local/lib/python2.7/site-packages/waitress/task.py", line 399, in execute     app_iter = self.channel.server.application(env, start_response)   File "/home/master/ngw/env/local/lib/python2.7/site-packages/pyramid/router.py", line 223, in call     response = self.invoke_subrequest(request, use_tweens=True)   File "/home/master/ngw/env/local/lib/python2.7/site-packages/pyramid/router.py", line 198, in invoke_subrequest     response = handle_request(request)   File "/home/master/ngw/env/local/lib/python2.7/site-packages/pyramid/tweens.py", line 20, in excview_tween     response = handler(request)   File "/home/master/ngw/nextgisweb/nextgisweb/resource/api.py", line 204, in resource_exception_tween     response = handler(request)   File "/home/master/ngw/env/local/lib/python2.7/site-packages/pyramid_tm/init.py", line 101, in tm_tween     reraise(*exc_info)   File "/home/master/ngw/env/local/lib/python2.7/site-packages/pyramid_tm/init.py", line 83, in tm_tween     response = handler(request)   File "/home/master/ngw/env/local/lib/python2.7/site-packages/pyramid/router.py", line 145, in handle_request     view_name   File "/home/master/ngw/env/local/lib/python2.7/site-packages/pyramid/view.py", line 541, in _call_view     response = view_callable(context, request)   File "/home/master/ngw/env/local/lib/python2.7/site-packages/pyramid/config/views.py", line 385, in viewresult_to_response     result = view(context, request)   File "/home/master/ngw/env/local/lib/python2.7/site-packages/pyramid/config/views.py", line 507, in _requestonly_view     response = view(request)   File "/home/master/ngw/nextgisweb/nextgisweb/render/api.py", line 33, in tile     rimg = req.render_tile((z, x, y), 256)   File "/home/master/ngw/nextgisweb/nextgisweb/wmsclient/model.py", line 203, in render_tile     return self.style.render_image(extent, (size, size))   File "/home/master/ngw/nextgisweb/nextgisweb/wmsclient/model.py", line 249, in render_image     url, auth=auth, headers=env.wmsclient.headers).content))   File "/home/master/ngw/env/local/lib/python2.7/site-packages/PIL/Image.py", line 2309, in open     % (filename if filename else fp)) IOError: cannot identify image file <_io.BytesIO object at 0x7fa36e560bf0>

Понедельник, 18 апреля 2016, 10:20 +03:00 от Denis Rykov notifications@github.com:

А я же там написал в сообщении к коммиту: This changes requires latest OWSLib (not yet released). Поставьте OWSLib из репозитория. — You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub

drnextgis commented 8 years ago

Используйте провайдер Image вместо Tiles при добавлении слоя на карту, должно помочь. А ошибка, видимо, из-за того, что сервер ПКК присылает кривой ответ.

drnextgis commented 8 years ago

@snpotapov, получилось?

snpotapov commented 8 years ago

Неа, остальные веб-сервисы нормальные - я имею в виду самого NegtGisWeb. А Росреестр не понятно. Из NextGis нормально читается.....

Вторник, 19 апреля 2016, 16:36 +03:00 от Denis Rykov notifications@github.com:

@snpotapov , получилось? — You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub

drnextgis commented 8 years ago

То есть вы создаёте WMS слой, добавляете его как Image на карту и он не отображается? У меня всё ok.

snpotapov commented 8 years ago

Да, я установил посл дистрибутив. Скачал и установил отдельно OWSLib. Сделал соединение WMS. Сделал слой WMS. Добавил его как слой Image на карту. И получил красный квадрат......

Вторник, 19 апреля 2016, 16:50 +03:00 от Denis Rykov notifications@github.com:

То есть вы создаёте WMS слой, добавляете его как Image на карту и он не отображается? У меня всё ok. — You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub

drnextgis commented 8 years ago

А вы тут случаем не забыли формат выбрать? Без этого работать не будет. screenshot from 2016-04-19 21 21 13

snpotapov commented 8 years ago

Да всякие пробовал. Завтра попробую на голой чистой виртуалке ..... Может пакеты какие переклинило...

Вторник, 19 апреля 2016, 17:22 +03:00 от Denis Rykov notifications@github.com:

А вы тут случаем не забыли формат выбрать? Без этого работать не будет. — You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub

snpotapov commented 8 years ago

Все получилось. С нуля поставил дистрибутив веба и накатил библиотеку OWSLib. Спасибо.

Вторник, 19 апреля 2016, 17:22 +03:00 от Denis Rykov notifications@github.com:

А вы тут случаем не забыли формат выбрать? Без этого работать не будет. — You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub

drnextgis commented 8 years ago

@snpotapov a вы на 2 ветке NextGIS Web? Предлагаю потестить 3 бранч с OpenLayers 3. 3 ветка не совместима со 2, поэтому просто git checkout 3 не сработает. Нужно ещё в БД выполнить команды отсюда за 2016-03-08.

snpotapov commented 8 years ago

Попробую.

Четверг, 21 апреля 2016, 17:02 +03:00 от Denis Rykov notifications@github.com:

@snpotapov a вы на 2 ветке NextGIS Web? Предлагаю потестить 3 бранч с OpenLayers 3. 3 ветка не совместима со 2, поэтому просто git checkout 3 не сработает. Нужно ещё в БД выполнить команды отсюда за 2016-03-08. — You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub

drnextgis commented 8 years ago

Спасибо. Жду фидбека.

simgislab commented 8 years ago

у меня все работает

snpotapov commented 8 years ago

Максим, проверяю ваше облако. Росреестр так и не показывается .... Но ошибок не выдает?

Сергей.

Среда, 18 мая 2016, 15:03 +03:00 от Maxim Dubinin notifications@github.com:

у меня все работает — You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub

drnextgis commented 8 years ago

Только что попробовал в облаке - все работает. Можно ссылку на ваш пример?

snpotapov commented 8 years ago

http://mgisfryazino.nextgis.com/resource/1  

Пятница, 27 мая 2016, 16:21 +03:00 от Denis Rykov notifications@github.com:

Только что попробовал в облаке - все работает. Можно ссылку на ваш пример? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub , or mute the thread .

snpotapov commented 8 years ago

http://mgisfryazino.nextgis.com/resource/1/display  

Пятница, 27 мая 2016, 16:21 +03:00 от Denis Rykov notifications@github.com:

Только что попробовал в облаке - все работает. Можно ссылку на ваш пример? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub , or mute the thread .

drnextgis commented 8 years ago

А если изменить формат слоя с 'jpg' на 'png'?

snpotapov commented 8 years ago

не влияет. может какого пользователя ввести? но там нет авторизации....

Пятница, 27 мая 2016, 16:37 +03:00 от Denis Rykov notifications@github.com:

А если изменить формат слоя с 'jpg' на 'png'? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub , or mute the thread .

simgislab commented 8 years ago

у меня все работает прекрасно посмотрите настройки, может у вас что-то по другому http://maxim.nextgis.com/resource/1/display http://maxim.nextgis.com/resource/37

snpotapov commented 8 years ago

А как он вообще работает - там нет ссылки на WMS сервис....

Пятница, 27 мая 2016, 16:56 +03:00 от Maxim Dubinin notifications@github.com:

у меня все работает прекрасно посмотрите настройки, может у вас что-то по другому http://maxim.nextgis.com/resource/1/display http://maxim.nextgis.com/resource/37 — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub , or mute the thread .

snpotapov commented 8 years ago

http://maxim.nextgis.com/resource/36/update  

Пятница, 27 мая 2016, 16:56 +03:00 от Maxim Dubinin notifications@github.com:

у меня все работает прекрасно посмотрите настройки, может у вас что-то по другому http://maxim.nextgis.com/resource/1/display http://maxim.nextgis.com/resource/37 — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub , or mute the thread .

simgislab commented 8 years ago

есть

snpotapov commented 8 years ago

Все разобрался ссылка http://maps.rosreestr.ru/arcgis/services/Cadastre/CadastreWMS/MapServer/WmsServer? а в документации другая.... http://maps.rosreestr.ru/arcgis/services/Cadastre/CadastreWMS/MapServer/WMSServer?request=GetCapabilities&service=WMS   Исправьте, а то народ не поймет...

Пятница, 27 мая 2016, 16:56 +03:00 от Maxim Dubinin notifications@github.com:

у меня все работает прекрасно посмотрите настройки, может у вас что-то по другому http://maxim.nextgis.com/resource/1/display http://maxim.nextgis.com/resource/37 — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub , or mute the thread .

simgislab commented 8 years ago

https://github.com/nextgis/docs_ngweb/edit/ru/source/layers.rst

мы очень любим PR)

snpotapov commented 8 years ago

Максим дай твой прямой адрес. Есть еще одна тема.

Пятница, 27 мая 2016, 17:53 +03:00 от Maxim Dubinin notifications@github.com:

https://github.com/nextgis/docs_ngweb/edit/ru/source/layers.rst мы очень любим PR) — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub , or mute the thread .

simgislab commented 8 years ago

maxim.dubinin@nextgis.com