-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Architectuur plaatje die de communicatie tussen een WOZ client, de WOZ bevragen proxy en de WOZ bevragen API weergeeft #118
Comments
@MelvLee duidelijk plaatje. Bij het WOZ team was nog wat onduidelijk of er dus één aansluiting naar een centraal gehoste proxy komt, of dat elke gemeente een proxy maakt. In het overleg zei je dacht ik het eerste, maar uit het plaatje volgt het tweede (proxy zit binnen gemeente). Weet je wat nu precies de bedoeling is? Leveren we alleen een SDK of docker service, of leveren we echt een centraal gehoste service die door alle gemeenten te leveren is? |
Het wordt aangeboden in een Docker image. Dan kunnen we alle kanten op. Het kan dan op elke machine (mac, Windows, Linux) worden gehost waarop Docker is geïnstalleerd. Een gemeente kan zelf bepalen hoe zij de image willen hosten, maar ik verwacht centraal binnen een gemeente. Voor de consumers is dit ook het makkelijkste. Er verandert praktisch niets ten opzichte van rechtstreeks aanroepen. Alleen de base-url en authenticatie/autorisatie protocol |
@melsk-r Bedankt, ziet er goed uit. Zou je voor de volle volledigheid ook nog het plaatje willen toevoegen met filtering door Kadaster? Daar kan dan een notitie bij dat die vanwege wetgeving (verrijking/interpretatie) niet gekozen is. Zoals besproken; het wordt nu complexer en duurder vanwege (een interpretatie van?) wetgeving. Dank je! |
@KadNielsS Doe ik graag maar het plaatje ziet er dan volgens mij toch heel anders uit. |
@melsk-r we weten niet precies hoe elke gemeente het doet, maar in hoofdlijnen zit er normaal gesproken een Security component tussen de client en de buitenwereld (in dit geval Kadaster). Bijvoorbeeld een API gateway. Een API gateway doet de binnengemeentelijke authenticatie en autorisatie (valideren bijv. client certificaat of ip-adres en oauth token) en de buitengemeentelijke authenticatie (client certificaat, api key) Die component zit er ook in de situatie met proxy tussen, alleen is die in het plaatje van Melvin (en jouw versies) voor het gemak als één gezien met de WOZ proxy. |
misschien een idee om de VNG Realisatie architecten hierop te tippen, want ik kan daarover niet snel iets terugvinden in de GEMMA architectuur, of is dit wat ze bedoelen met "servicebuscomponent"? |
@fsamwel Nav 'is dit wat ze bedoelen met "servicebuscomponent"' zou mijn antwoord zijn: Nee. Hoewel je daarme technisch van alles kan (bijv. via translatie) is het om allerlei redenen onverstandig om veel businesslogica onder te brengen in een component als een message broker (de component die meestal wordt bedoeld met 'servicebuscomponent'). Zie https://www.martinfowler.com/articles/microservices.html#SmartEndpointsAndDumbPipes voor toelichting waarom. |
@adgerrits helemaal eens. We leveren een docker container aan gemeenten. Ik ben ook niet voor een centrale proxy anders dan dat het kadaster de gefilterde waarden levert in de API. Dat doet men niet omdat men geen convenience API wil leveren, maar omdat het kadaster conform de vigerende wetgeving geen bewerking/interpretatie van (deze!) data mag uitvoeren. |
Conclusie is dat we:
|
@CathyDingemanse, eens denk ik. Ook besproken intern Kadaster. We zouden die 'service' als Kadaster best willen bieden, maar daarvoor is inderdaad een aanpassing van de wet nodig. |
Architectuurplaatje voor de korte termijn is door Melvin opgesteld. Dat gaat Robert ook opnemen in de "getting started" en daarna kan deze issue gesloten worden. |
Zie: https://github.com/VNG-Realisatie/Haal-Centraal-WOZ-bevragen/blob/master/docs/communicatie-client-proxy-woz-api.pdf. Het origineel is ook in de docs map te vinden en is gemaakt met draw.io
The text was updated successfully, but these errors were encountered: