<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
Dag Stijn, </div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
om effe duidelijk te zijn, ik ben op zoek naar de endpoints van mercator voor vlan's 750 (ontikkel) / 752 (oefen) en 754 (productie) en niet vlan 757 want dat is van de DMZ.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof ContentPasted0 ContentPasted1">
Ik ben even zelf aan het zoeken geweest, maar er lijken dingen te ontbreken. Ik denk dat <a href="http://mercn-geoserver-publicatie-on.lb.cumuli.be:8080/" data-loopstyle="link" id="LPlnk318510">http://mercn-geoserver-publicatie-on.lb.cumuli.be:8080</a> wel
 ok is. Maar daar hebben we niet alle lagen als ik het goed heb. De productie copy gebeurt enkel naar <a href="http://mercn-geoserver-integratie-on.lb.cumuli.be:8080/" data-loopstyle="link" id="LPlnk391725">http://mercn-geoserver-integratie-on.lb.cumuli.be:8080</a>.
 Maar hier ontbreken de redirect urls voor keycloak denk ik. </div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof ContentPasted0 ContentPasted1">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof ContentPasted0 ContentPasted1">
Soit, ik denk echt dat jullie dit eens goed moeten documenteren. Ik heb dit al meermaals gevraagd. Want jullie opzet is echt niet eenvoudig. Jullie hebben uiteindelijk 5 omgevingen die je op 3 manieren kan benaderen (vanuit het internet, vanuit de cert proxies
 of rechtstreeks). Dan heb je het aspect van welke data kunnen we waar vinden ... Dit geeft wel heel wat uitzoekwerk om dan een url te vinden.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof ContentPasted0 ContentPasted1">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof ContentPasted0 ContentPasted1">
Mvg</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof ContentPasted0 ContentPasted1">
Christophe</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>Van:</b> De Blende Christophe <christophe.deblende@vlaanderen.be><br>
<b>Verzonden:</b> vrijdag 14 april 2023 20:14<br>
<b>Aan:</b> Goedertier Stijn <stijn.goedertier@vlaanderen.be>; van Eck Christel <christel.vaneck@vlaanderen.be><br>
<b>CC:</b> phoenix@list.omgeving.vlaanderen.be <phoenix@list.omgeving.vlaanderen.be>; Ooms Gijsbert <gijsbert.ooms@vlaanderen.be><br>
<b>Onderwerp:</b> Re: RO viewer - Mercator gebruik</font>
<div> </div>
</div>
<style type="text/css" style="display:none">
<!--
p
        {margin-top:0;
        margin-bottom:0}
-->
</style>
<div dir="ltr">
<div class="x_elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0); background-color:rgb(255,255,255)">
Dag Stijn, </div>
<div class="x_elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0); background-color:rgb(255,255,255)">
<br>
</div>
<div class="x_elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0); background-color:rgb(255,255,255)">
ik zal proberen om nog iets uit te werken. Het idee is om de topologie van heel de setup wat door te hebben. Voor RO-viewer zitten we namelijk met nogal een mix van requests</div>
<div class="x_elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0); background-color:rgb(255,255,255)">
<ul>
<li><span>een gebruiker die naar mercator.omgeving.vlaanderen.be gaat, op welke server komt die uiteindelijk</span></li><ul style="list-style-type:circle">
<li><span>welke CORS security zitten op de externe endpoints</span></li><li><span>welke authenticatie mechanisme werkt vanuit de browser (certificaten denk ik dan)</span></li></ul>
<li>voor interne services (backend van ro viewer zelf), welke endpoint moeten we daar gebruiken zodat de security goed werkt</li><ul style="list-style-type:circle">
<li>werkt bvb Openam nog ? of is het alleen nog OAuth2</li><li>...</li></ul>
</ul>
<div>Het is gewoon dat we moeten weten hoe we ervoor kunnen zorgen dat we geen authenticatie errors meer krijgen in de RO-viewer en dat hangt vooral af welke weg we wanneer moeten afleggen (lees welke endpoints moeten we gebruiken). Het ziet er nu naar uit
 dat RO-viewer correct werkt voor publieke lagen, maar niet voor interne lagen.</div>
<div><br>
</div>
<div>Verder te bekijken, maar ik zal proberen iets uit te werken, tenzij jullie hier al documentatie rond hebben ?</div>
<div><br>
</div>
<div>Mvg</div>
<div>Christophe</div>
</div>
<div id="x_appendonsend"></div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="x_divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>Van:</b> Goedertier Stijn <stijn.goedertier@vlaanderen.be><br>
<b>Verzonden:</b> woensdag 12 april 2023 13:51<br>
<b>Aan:</b> De Blende Christophe <christophe.deblende@vlaanderen.be>; van Eck Christel <christel.vaneck@vlaanderen.be><br>
<b>CC:</b> phoenix@list.omgeving.vlaanderen.be <phoenix@list.omgeving.vlaanderen.be>; Ooms Gijsbert <gijsbert.ooms@vlaanderen.be><br>
<b>Onderwerp:</b> Re: RO viewer - Mercator gebruik</font>
<div> </div>
</div>
<style>
<!--
@font-face
        {font-family:Wingdings}
@font-face
        {font-family:"Cambria Math"}
@font-face
        {font-family:Calibri}
p.x_x_MsoNormal, li.x_x_MsoNormal, div.x_x_MsoNormal
        {margin:0cm;
        font-size:10.0pt;
        font-family:"Calibri",sans-serif}
a:link, span.x_x_MsoHyperlink
        {color:blue;
        text-decoration:underline}
p.x_x_MsoListParagraph, li.x_x_MsoListParagraph, div.x_x_MsoListParagraph
        {margin-top:0cm;
        margin-right:0cm;
        margin-bottom:0cm;
        margin-left:36.0pt;
        font-size:10.0pt;
        font-family:"Calibri",sans-serif}
p.x_x_elementtoproof, li.x_x_elementtoproof, div.x_x_elementtoproof
        {margin-right:0cm;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif}
.x_x_MsoChpDefault
        {font-size:10.0pt}
@page WordSection1
        {margin:70.85pt 70.85pt 70.85pt 70.85pt}
ol
        {margin-bottom:0cm}
ul
        {margin-bottom:0cm}
-->
</style>
<div lang="NL-BE" style="word-wrap:break-word">
<div class="x_x_WordSection1">
<p class="x_x_MsoNormal"><span style="font-size:11.0pt">Dag Christophe,</span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"> </span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt">De requests voor MercatorNet gaan via dit endpoint op de reverse proxy: (mercator.vonet.be bestaat al >2 jaar niet meer):</span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"><a href="https://www.mercator.vlaanderen.be/raadpleegdienstenmercatorpubliek/ows?SERVICE=WMS&version=1.3.0&request=GetCapabilities" originalsrc="https://www.mercator.vlaanderen.be/raadpleegdienstenmercatorpubliek/ows?SERVICE=WMS&version=1.3.0&request=GetCapabilities" shash="QhVrumgEH4evwlDKqWiYnTal1Q9PyqIaGn0EMlWphD4NppJSBauUNNqZ0xJAVlblYUZMx0utWYn6JkZV1HXZBC1PtnpGWzrRKc7rGCJjJgKB65v+uGVu5iJgjwwkr026+3lHwRdWnleTT9zAjdHYz0EIaa8nVRcfLTJD3CPu0So=">https://www.mercator.vlaanderen.be/raadpleegdienstenmercatorpubliek/ows?SERVICE=WMS&version=1.3.0&request=GetCapabilities</a>
</span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"> </span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt">via de load balancer naar de authentication proxies op dit endpoint:</span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"><a href="http://mercn-certproxy-pr-757.lb.cumuli.be:8080/raadpleegdienstenmercatorpubliek/ows?SERVICE=WMS&version=1.3.0&request=GetCapabilities" originalsrc="http://mercn-certproxy-pr-757.lb.cumuli.be:8080/raadpleegdienstenmercatorpubliek/ows?SERVICE=WMS&version=1.3.0&request=GetCapabilities" shash="hYVJjpMkFV49GN6a08NTbmsoQThAOkLAt4SCe8U+g9QtFKjCd/gD9lLFRoWIrn64hu4nm0TZpn/vMN5MaMeFwtcKhCwo4+SUItHcamEViQrRA4Z4bVX8zH4LDkGWt2VezRsUVl5h13SV/oWaSHEcJpGnyA7XGfd/m85jHnp+OcI=">http://mercn-certproxy-pr-757.lb.cumuli.be:8080/raadpleegdienstenmercatorpubliek/ows?SERVICE=WMS&version=1.3.0&request=GetCapabilities</a></span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"> </span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt">en via load balancer naar de geoservers op dit endpoint:</span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"><a href="http://mercn-geoserver-publicatie-pr.lb.cumuli.be:8080/raadpleegdienstenmercatorpubliek/ows?service=WFS&version=2.0.0&request=GetCapabilities" originalsrc="http://mercn-geoserver-publicatie-pr.lb.cumuli.be:8080/raadpleegdienstenmercatorpubliek/ows?service=WFS&version=2.0.0&request=GetCapabilities" shash="OddgUCQ5tjKy9aoxRxd/xFSiJQv1H3ejAhpNiWc3A0wkeUjSOsrV1KSuEr0uz+8EE+ilPxxApUzlnUYpq6CL5ojt/BLd9JseTEFlbkdwIExeqo25CQuvQfSUr4ky4DPrm7PgRRMVcBPZdi5O54Ozhj7rygvG8NHgZf5JsGeDIvw=">http://mercn-geoserver-publicatie-pr.lb.cumuli.be:8080/raadpleegdienstenmercatorpubliek/ows?service=WFS&version=2.0.0&request=GetCapabilities</a>
</span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"> </span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt">Voor al deze endpoints zijn varianten mogelijk afhankelijk van het service type (bv. /wfs, /wms, /wcs),  workspace (bv. /lu/ows), en laag (bv. /lu/lu_si_ct/wfs).
</span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"> </span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt">De authentication proxies ondersteunen</span></p>
<ol start="1" type="1" style="margin-top:0cm">
<li class="x_x_MsoListParagraph" style="margin-left:0cm"><span style="font-size:11.0pt">authenticatie via OIDC bearer token (voor Omgeving systeemgebruikers en QGIS fat client gebruikers); of</span></li><li class="x_x_MsoListParagraph" style="margin-left:0cm"><span style="font-size:11.0pt">authenticatie via certificaat (voor niet-Omgeving systeemgebruikers); of</span></li><li class="x_x_MsoListParagraph" style="margin-left:0cm"><span style="font-size:11.0pt">OpenAM authenticatie.</span></li></ol>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"> </span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt">Dus in functie van jullie use cases:</span></p>
<ul type="disc" style="margin-top:0cm">
<li class="x_x_MsoListParagraph" style="margin-left:0cm"><b><span style="font-size:11.0pt">Vertrekkende van de Web browser voor publieke lagen</span></b><span style="font-size:11.0pt">: rechtstreeks op de mercator.vlaanderen.be endpoint is alleen mogelijk voor
 niet-beveiligde lagen. </span></li><li class="x_x_MsoListParagraph" style="margin-left:0cm"><b><span style="font-size:11.0pt">Via backend voor beveiligde lagen</span></b><span style="font-size:11.0pt">: Voor beveiligde lagen moet via de backend gewerkt worden met bearer token. De backend kan
 rechtstreeks op de GeoServers connecteren en dus de authentication proxies bypassen. De systeemgebruiker heeft het profiel MercatorGeoserverLezer nodig. Wat momenteel niet mogelijk is, is dat een Web gebruiker zich rechtstreeks authenticeert op GeoServer via
 OIDC; er wordt momenteel immers geen sessie info bijgehouden (Hazelcast session sharing staat momenteel uit); voor requests rechtstreeks op de services maakt GeoServer sowieso nooit een sessie aan (alleen op de Web interface).</span></li><li class="x_x_MsoListParagraph" style="margin-left:0cm"><b><span style="font-size:11.0pt">Vanuit de backend voor PDF-generatie</span></b><span style="font-size:11.0pt">: via bearer token. Hier kan je ook de authentication proxies bypassen en rechtstreeks op
 de GeoServer connecteren. </span></li></ul>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"> </span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt">Hopelijk is dit voldoende duidelijk en haalbaar voor jullie op de services zo aan te spreken. Als je nog opmerkingen hebt kunnen we het beter face-to-face bepreken.
</span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"> </span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt">Met vriendelijke groet,</span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt">Stijn</span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"> </span></p>
<p class="x_x_MsoNormal"><span style="font-size:11.0pt"> </span></p>
<div style="border:none; border-top:solid #B5C4DF 1.0pt; padding:3.0pt 0cm 0cm 0cm">
<p class="x_x_MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt; color:black">Van:
</span></b><span style="font-size:12.0pt; color:black">De Blende Christophe <christophe.deblende@vlaanderen.be><br>
<b>Datum: </b>dinsdag, 11 april 2023 om 08:37<br>
<b>Aan: </b>Goedertier Stijn <stijn.goedertier@vlaanderen.be>, van Eck Christel <christel.vaneck@vlaanderen.be><br>
<b>CC: </b>phoenix@list.omgeving.vlaanderen.be <phoenix@list.omgeving.vlaanderen.be><br>
<b>Onderwerp: </b>RO viewer - Mercator gebruik</span></p>
</div>
<div>
<p class="x_x_MsoNormal" style="background:white"><span style="font-size:12.0pt; color:black">Dag Christel, Stijn, </span></p>
</div>
<div>
<p class="x_x_MsoNormal" style="background:white"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_x_MsoNormal" style="background:white"><span style="font-size:12.0pt; color:black">Phoenix is op dit moment bezig met de upgrade van RO-viewer naar de laatste SSO oplossing van SIDO (OAuth2). Hierbij merken we dat Mercator enorm gebruikt wordt. Zowel
 WMS als WFS lagen, ... </span></p>
</div>
<div>
<p class="x_x_MsoNormal" style="background:white"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_x_MsoNormal" style="background:white"><span style="font-size:12.0pt; color:black">De vraag is een beetje welke endpoints van Mercator gebruiken we best en wanneer. Ik denk dat we volgende UC's hebben:</span></p>
</div>
<div>
<ul type="disc">
<li class="x_x_elementtoproof" style="color:black; background:white"><span style="font-size:12.0pt">vertrekkende van een web browser waarbij een gebruiker die de WMS / WFS rechtstreeks bevraagt</span></li><li class="x_x_elementtoproof" style="color:black; background:white"><span style="font-size:12.0pt">vanuit de backend, de toepassing "RO viewer" zelf die voor PDF generatie bepaalde WMS / WFS lagen nodig heeft (of dit dode functionaliteit is moeten we nog nagaan)</span></li><li class="x_x_elementtoproof" style="color:black; background:white"><span style="font-size:12.0pt">er zijn ook interne lagen die gebruikt worden, die dus beveiligd zijn. Hier vraag ik mij af of deze steeds vanuit de backend bevraagd moeten worden? Of kan dit
 ook via de web browser rechtstreeks ?</span></li><li class="x_x_elementtoproof" style="color:black; background:white"><span class="x_x_contentpasted0"><span style="font-size:12.0pt">en dan een laatste vraag, is het mogelijk een oplijstig te hebben van de nog geldige mercator endpoints. Ik zie hier nog vonet
 endpoints in de code. Ik vermoed dat deze niet meer geldig zijn. (</span></span><a href="https://www.mercator.vonet.be/raadpleegdienstenmercatorintern/lu/lu:lu_gwp_rv_raster/wms" originalsrc="https://www.mercator.vonet.be/raadpleegdienstenmercatorintern/lu/lu:lu_gwp_rv_raster/wms" shash="Mn9LiVEWZg6J75WdKK6/mLkT+ROSuIWvtuDTW0RnQoBDe1TDhjE3OnMZrIhky52e5J2hFSFnre6x2Iahmfuw3XLb4X3fne89/RRkrf+J8hlYVMpvo74wcgFdL8hwiNILrebJf633F3WWmmDPU4WxtDXChTPB1yAJI9I2o1ojoXM="><span style="font-size:12.0pt">https://www.mercator.vonet.be/raadpleegdienstenmercatorintern/lu/lu:lu_gwp_rv_raster/wms</span></a><span class="x_x_contentpasted0"><span style="font-size:12.0pt">).
 Met dan ook de overeenkomstige publieke en interne url's. Ik zie dat de RO viewer op dit moment een lange weg aflegt zelf voor bepaalde requests. Zouden hier interne endpoints gebruikt worden zou er minder overhead zijn. </span></span><span style="font-size:12.0pt"></span></li></ul>
<div>
<p class="x_x_MsoNormal" style="background:white"><span style="font-size:12.0pt; color:black">Als het gemakkelijker is om dit effe face to face te bespreken, laat me iets weten, dan regel ik wel iets. </span></p>
</div>
<div>
<p class="x_x_MsoNormal" style="background:white"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_x_MsoNormal" style="background:white"><span style="font-size:12.0pt; color:black">Mvg</span></p>
</div>
<div>
<p class="x_x_MsoNormal" style="background:white"><span style="font-size:12.0pt; color:black">Christophe</span></p>
</div>
</div>
</div>
</div>
</div>
</body>
</html>