Use Cases Resource Broker ZA-in
Overzicht Resource Broker ZA-in
Onderstaande figuur toont een overzicht van de interfaces, services en functies van de Resource Broker ZA-in component. Resource Broker ZA-in is voor AORTA Resource Clients de ingang om interacties te initiëren bij AORTA Resource Servers of bij Resource Broker componenten (bijv. ACT/VWI Server). Wanneer een interactie moet worden geïnitieerd bij een AORTA Resource Server, dan verloopt dit altijd via Resource Broker VnC.
De services zijn toegankelijk via een geboden interface en worden beschreven in de vorm van use cases. Een service wordt altijd vervult middels één of meerdere applicatiefuncties, bijvoorbeeld Screening. De Resource Broker ZA-in component maakt zelf ook gebruik van een aantal interfaces, bijvoorbeeld van de Verzending & Consolidatie Interface.
Verwerken AORTA FHIR-interactie
Primaire actor | Resource Client (GBZ-applicatie, Volgjezorg, GBK-applicatie) |
---|---|
Systeem | ZA FHIR Processor |
Secundaire actor | Autorisatie Server ZA, RB LOG, RB VnC, ACT/VWI Server, Mitz TR |
Code | |
Realiseert Feature |
Pre-condities
De primaire actor is aangesloten op het systeem. |
Het systeem is slechts benaderbaar voor
|
Het systeem is aangesloten op de secundaire actor(en). |
Triggers
De primaire actor stuurt een resource request in
Main flow
AOF.UCe.VAL.100.v1 - Toetsing type content | Uitkomst | |
---|---|---|
Stap | Omschrijving | |
i | Het systeem ontvangt een verzoek en start de verwerking. Het systeem toetst of het gevraagde type content (Accept header) en het gehanteerde type content (Content-Type header) worden ondersteund. NB. wanneer het verzoek wordt ontvangen van een component van VZVZ, dan hoeft geen toets op type content te worden uitgevoerd. | Gevraagd type content niet ondersteund statuscode 406 Not Acceptable |
Gehanteerd type content niet ondersteund statuscode 415 Unsupported Media Type | ||
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. |
AOF.UCe.VAL.200.v1 - Toetsing tokens bij inkomend request | Uitkomst | |
---|---|---|
Stap | Omschrijving | |
i | Het systeem controleert of alle vereiste tokens zijn toegevoegd aan het request | Ontbrekend token statuscode 401 Unauthorized
|
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. | ||
ii | Het systeem controleert de geldigheid van de meegezonden, van toepassing zijnde, tokens
Welke tokens van toepassing zijn is beschreven in de interface specificaties die horen bij deze use case. | Ongeldig token statuscode 401 Unauthorized
|
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. |
AOF.UCe.VAL.150.v2 - Inhoudelijke toetsing request | Uitkomst | |
---|---|---|
Stap | Omschrijving | |
i | Het systeem toetst of het request geen malafide inhoud bevat (zie FHIR security, input validation). | Ongeldig FHIR-verzoek statuscode 400 Bad Request
|
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. | ||
ii | Het systeem bepaalt, m.b.v. de interactietabel en m.b.v. de _vrb_ter_scope claim in het AORTA access_token, welk interactie-id van toepassing is op het ontvangen request. Zie ook de toelichting "Bepalen van het interactie-id". | Ongeldig FHIR-verzoek statuscode 400 Bad Request
|
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. | ||
iii | Het systeem toetst of het verzoek voldoet aan de interface specificatie. Hierbij moet ook worden voldaan aan de toelichting "Controle van batch en transaction requests". FHIR-requests dienen te worden getoetst tegen de core FHIR specificaties (RESTful API). Indien een Indien een specifieke FHIR-profiel van toepassing is voor het gevonden interactie-id, dan dient het FHIR-request hier ook tegen te worden getoetst. NB. toetsing tegen een volledig FHIR-profiel wordt nog niet gedaan - consequenties van deze toets worden eerst in kaart gebracht. | Ongeldig FHIR-verzoek statuscode 400 Bad Request
|
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. |
AOF.UCe.VAL.300.v1 - Toetsing scope van request | Uitkomst | |
---|---|---|
Stap | Omschrijving | |
i | Het systeem controleert of het ontvangen resource request is toegestaan binnen de scope van het access_token. Zie ook de toelichting "Controle of request binnen scope valt" en de toelichting "Controle van batch en transaction requests". | Scope is niet toereikend statuscode 403 Forbidden
|
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. |
Stap | Omschrijving | Uitkomst |
---|---|---|
1 | Het systeem
| |
2 | FHIR-result ontvangen van een VZVZ-component anders dan Resource Broker VnC, of ontvangen van een externe component/dienst (bijv. van Mitz): het systeem overschrijft eventuele URL's in het opgeleverde resultaat
De juiste Resource Broker XXX-in wordt bepaald o.b.v. de inhoud van de vrb_client_id claim in het AORTA access_token. De base URL die hierbij hoort wordt verkregen uit het AORTA Stelseltoken. | |
3 | Het systeem ontvangt een response. |
AOF.UCe.SCR.100.v1 - Screening van response | Uitkomst | |
---|---|---|
Stap | Omschrijving | |
i | Het systeem toetst of eventueel aanwezige patiënt BSN's uit het opgeleverde resultaat overeenkomen met het BSN dat is opgenomen in de | BSN in resultaat komt niet overeen met access_token statuscode 500 Internal Server Error
|
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. | ||
ii | Indien de response moet worden geretourneerd aan MedMij, dan verwijderd het systeem alle aanwezige BSN's uit de op te leveren response. | |
iii | Het systeem voert de filtering uit zoals beschreven in de toelichting "Filtering HTTP-response". |
Stap | Omschrijving | Uitkomst |
---|---|---|
4 <exit> | Het systeem retourneert een response naar de primaire actor. | Verwerking succesvol statuscode 200 OK |
Post-condities
Het systeem heeft het verzoek op de juiste wijze verwerkt en heeft een daarbij passende response geretourneerd. |
Het systeem heeft ontvangen request en de geretourneerde response gelogd, zoals beschreven in de Toelichting Logging. |
Het systeem heeft van het ontvangen request, de volgende attributen gelogd:
== Het systeem heeft voor ieder uitgaand request, dat bij het doorlopen van de use case werd verzonden, de volgende attributen gelogd:
Aanvullend daarop heeft het systeem van het ontvangen request de volgende attributen gelogd:
|
Het systeem heeft van de geretourneerde response, de volgende attributen gelogd:
== Het systeem heeft voor iedere response, die bij het doorlopen van de use case werd ontvangen, de volgende attributen gelogd:
|