Rollenmodel
Het onderstaande diagram toont de rollen die vanuit de MedMij Core in de verschillende onderwerpen gebruikt worden. De rollen staan uitgewerkt in drie lagen van een Enterprise Architectuur, namelijk Business, Application en Technologie. De rollen in het MedMij Afsprakenstelsel zijn bij elkaar horende setjes verantwoordelijkheden. De rollen kunnen, over de lagen heen, aan elkaar gekoppeld zijn. Een rol gaat gepaard met één of meerdere onderliggende rollen. Dat wil zeggen dat een rol in het algemeen wordt ingevuld met één of meer verbonden onderliggende rollen, al-dan-niet op een onderliggende laag. De rolbindingen vormen zo de ruggengraat van de architectuur van het MedMij Afsprakenstelsel.
Gegevensuitwisseling
Voor gegevensuitwisseling wordt het eerder getoonde rollenmodel uitgebreid met rollen die voor gegevensuitwisseling van toepassing zijn.
Roldefinities
Business
Begrip | Definitie |
---|---|
Eigenaar MedMij | Macro lookup error: excerpt "b_Eigenaar MedMij" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
MedMij Beheer | Macro lookup error: excerpt "b_MedMij Beheer" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Persoon | Macro lookup error: excerpt "b_Persoon" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Deelnemer | Macro lookup error: excerpt "b_Deelnemer" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Dienstverlener persoon (DVP) | Macro lookup error: excerpt "b_Dienstverlener persoon" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Dienstverlener aanbieder (DVA) | Macro lookup error: excerpt "b_Dienstverlener aanbieder" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Dienstverlener authenticatie (DVAuthN) | Macro lookup error: excerpt "b_Dienstverlener authenticatie" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Aanbieder | Macro lookup error: excerpt "b_Aanbieder" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
OAuth Resource Owner | Macro lookup error: excerpt "b_OAuth Resource Owner" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Applicatie
Begrip | Definitie |
---|---|
MedMij Registratie | Macro lookup error: excerpt "b_MedMij Registratie" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
User Agent | Macro lookup error: excerpt "b_User Agent" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
DVP Server | Macro lookup error: excerpt "b_DVP Server" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Authorization Server | Macro lookup error: excerpt "b_Authorization Server" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Authentication Server | Macro lookup error: excerpt "b_Authentication Server" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Resource Client | Macro lookup error: excerpt "b_Resource Client" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
OAuth Client | Macro lookup error: excerpt "b_OAuth Client" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Authentication Client | Macro lookup error: excerpt "b_Authentication Client" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Resource Server | Macro lookup error: excerpt "b_Resource Server" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
OAuth Resource Server | Macro lookup error: excerpt "b_OAuth Resource Server" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Technologie
Begrip | Definitie |
---|---|
Frontchannel Node | Macro lookup error: excerpt "b_Frontchannel Node" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Backchannel Node | Macro lookup error: excerpt "b_Backchannel Node" was not found on page "Begrippenlijst" (with ID 269419481) in space "MMAfsprakenstelsel2". If you're experiencing issues please see our Troubleshooting Guide. |
Persoonsdomein
Business
In het Persoonsdomein is er naast de rol Dienstverlener persoon ook de rol Persoon. Hoewel Dienstverlener persoon namens Persoon handelt, kan Persoon niet ongenoemd blijven in de afspraken op deze en onderliggende lagen. Dat komt doordat Persoon niet enkel de gebruiker van Dienstverlener persoon is, maar allereerst het onderwerp van de gezondheidsinformatie die Deelnemers ter beschikking moet stellen; daarvoor is authenticatie en autorisatie nodig. In de architectuur van het afsprakenstelsel heeft Persoon een operationele rol bij authenticatie en autorisatie van het gegevensverkeer.
Application
In het persoonsdomein zijn twee rollen onderscheiden: de User Agent en de DVP Server. Dat is nodig om de verbinding te kunnen leggen met de rollen volgens OAuth. User Agent is de front-end-rol voor de DVP Server, en kan bijvoorbeeld in een browser zijn geïmplementeerd. Zoals ook elders in het MedMij Afsprakenstelsel gaat het hier om rollen, om setjes verantwoordelijkheden dus, niet om implementatiecomponenten.
Aanbiedersdomein
Business
In het Aanbiedersdomein is er naast de rol Dienstverlener aanbieder ook de rol Aanbieder. Deze rol wordt operationeel geheel vertegenwoordigd door de Dienstverlener aanbieder.
Application
Waar een Persoon zelf operationeel betrokken wordt in het informatieverkeer — namelijk om zich te laten authenticeren, en het verkeer te laten autoriseren — laat de Aanbieder zich operationeel geheel vertegenwoordigen door zijn Dienstverlener en diens Authorization Server en Resource Server. Ook al zal in veel gevallen de gezondheidsinformatie uiteindelijk uit een achterliggend systeem worden betrokken, voor het MedMij Afsprakenstelsel is dat geen kwestie. Het is voldoende om bij de Authorization Server en Resource Server de eindverantwoordelijkheid neer te leggen (black box).
De genoemde servers treden op namens alle eventuele achterliggende systemen in het Aanbiedersdomein, zoals xIS'en. Die achterliggende complexiteit is een black box. Het is mogelijk dat een individuele xIS optreedt voor beide servers, maar dan moeten ook alle met deze rollen verbonden verantwoordelijkheden zijn ingevuld, zowel de direct verbonden verantwoordelijkheden (op de Applicatielaag) als de indirect verbonden verantwoordelijkheden (op de lagen erboven en eronder).
Hoezeer ook alle eindverantwoordelijkheden gedragen worden door de Dienstverleners die deelnemer zijn in het MedMij Afsprakenstelsel, zij kunnen ervoor kiezen de uitvoering van die verantwoordelijkheden deels of zelfs geheel uit te besteden. In een mogelijke systeemarchitectuur maken meerdere Resource Server-systemen gebruik van eenzelfde (al dan niet uitbesteed) Authorization Server-systeem. Het is mogelijk dat die Resource Server-systemen samen onder de eindverantwoordelijkheid van één Dienstverlener aanbieder vallen, met de uitvoering al dan niet uitbesteed. Het is ook mogelijk dat twee verschillende Dienstverlener aanbieders voor de Authorization Server gebruik maken van eenzelfde onderaannemer.
De architectuur heeft zo maximale ruimte aan de eigen businessmodellen en architecturen van Dienstverlener aanbieder willen geven zonder daarbij de interoperabiliteit en strakke eindverantwoordelijkheden geweld aan te doen.
Een rol is nadrukkelijk geen component of systeem. Menig rol wordt weliswaar door componenten en systemen gerealiseerd, maar hoe dat precies gebeurt, en hoeveel en welke componenten- of systeemarchitectuur daarvoor wordt gebruikt is aan de Dienstverlener, zolang deze zijn rollen, op alle lagen, naar behoren speelt, dat wil zeggen, de verantwoordelijkheden van die rollen draagt. Zo wordt aan Dienstverleners, in beide domeinen, volop ruimte geboden een businessmodel naar eigen inzicht te kiezen, waarin volop ruimte is voor onderaannemers, zolang de eindverantwoordelijkheid jegens het MedMij Afsprakenstelsel maar onvervreemdbaar bij de Dienstverlener blijft liggen.
MedMij-Verkeer
Al het MedMij-verkeer is over domeingrenzen. Verkeer binnen het Persoonsdomein of het Aanbiedersdomein maakt geen deel uit van MedMij-verkeer. Ook authenticatieverkeer is uitgesloten, omdat het MedMij Afsprakenstelsel geen eisen oplegt over welke (externe) Authentication Server wordt gebruikt. Het MedMij Afsprakenstelsel vereist dát er een passende authenticatie door Aanbieder moet plaatsvinden, maar het verkeer dat daarvoor nodig is — tussen Authorization Server, Authentication Server en User Agent — is geen MedMij-verkeer. Het is de Aanbieder die niettemin als verwerkingsverantwoordelijke verantwoordelijk blijft voor een passende keuze van een Authentication Server en voor het laten inrichten van het authenticatieverkeer.