Skip to main content
Skip table of contents

Use Cases Autorisatie Server GTK

Overzicht Autorisatie Server GTK

Onderstaande figuur toont een overzicht van de interfaces, services en functies van de Autorisatie Server GTK component.

image-20240213-104410.png

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 TWIIN Autorisatie Server.

Uitgeven TWIIN Assertions

Primaire actor

Resource Broker GTK

Systeem

TWIIN Assertion Issuer

Secundaire actor

-

Code

AOF.UC.ASGTK.100.v1

Pre-condities

De primaire actor is aangesloten op het systeem.

Het systeem is slechts benaderbaar voor

  • componenten van VZVZ die zijn aangesloten via een intern netwerk of op het AORTA netwerk

Triggers

  • De primaire actor stuurt een request in

Main flow

Stap

Omschrijving

Uitkomst

1

Het systeem ontvangt een verzoek en start de verwerking.

2

Het systeem toetst of het verzoek voldoet aan de interface specificatie.

Ongeldig verzoek

statuscode 400 Bad Request

Het systeem genereert de vereiste foutresponse en gaat verder met de exit stap van de main flow.

3

Het systeem controleert de geldigheid van het ontvangen sourceToken.

Ongeldig token

statuscode 401 Unauthorized

Het systeem genereert de vereiste foutresponse en gaat verder met de exit stap van de main flow.

4

Het systeem geneert o.b.v. van de gegevens in het ontvangen sourceToken, een client_assertion, en indien van toepassing een assertion., conform het Twiin afsprakenstelsel.

5

<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 van het ontvangen request, de volgende attributen gelogd:

  • datum en tijd van ontvangst

  • request-id

  • initial-request-id

  • client role-id (slechts van toepassing wanneer de client een VZVZ component is, en de aanroep niet via TLS geschiedt)

  • client common name (slechts van toepassing wanneer de aanroep via TLS geschiedt)

Het systeem heeft van de geretourneerde response, de volgende attributen gelogd:

  • datum en tijd van response

  • request-id van het bijbehorende request

  • initial-request-id van het bijbehorende request

  • client role-id (slechts van toepassing wanneer de client een VZVZ component is, en de aanroep niet via TLS geschiedt)

  • client common name (slechts van toepassing wanneer de aanroep via TLS geschiedt)

  • HTTP statuscode en eventueel geretourneerde foutinformatie

Uitgeven AORTA access_token

Primaire actor

Extern GTK

Systeem

TWIIN Autorisatie Server

Secundaire actor

ZORG-AB, Autorisatie Server ZA

Code

AOF.UC.ASGTK.200.v1

Pre-condities

De primaire actor is aangesloten op het TWIIN netwerk.

Het systeem is slechts benaderbaar voor

  • GTK’s die zijn aangesloten op het TWIIN netwerk

Triggers

  • De primaire actor stuurt een request in

Main flow

Stap

Omschrijving

Uitkomst

1

Het systeem ontvangt een verzoek en start de verwerking.

2

Het systeem toetst of het verzoek voldoet aan de interface specificatie.

Het systeem toetst of de volgende attributen aanwezig zijn en ook een juiste waarde bevatten:

  • grant_type

  • client_assertion_type

Het systeem toetst of de volgende attributen aanwezig zijn:

  • client_assertion

  • assertion

Een scope is verplicht wanneer géén assertion is opgenomen, die een autorization_base bevat. Een eventueel aanwezige authorization_base moet een SAML AORTA consent_token zijn.

Wanneer wel een consent_token aanwezig is in de ontvangen assertion, maar geen scope werd ontvangen, dan wordt de scope van het request bepaalt o.b.v. de contextcode in het consent_token.

De volgende attributen worden inhoudelijk later getoetst, op het moment dat een AORTA access_token wordt gevraagd aan Autorisatie Server ZA:

  • scope

  • uit assertion: sub, authorizer, authzBase, patient, user_id, user_role

Ongeldig verzoek

statuscode 400 Bad Request, error=invalid_request

Het systeem genereert de vereiste foutresponse en gaat verder met de exit stap van de main flow.

3

Het systeem controleert de geldigheid van een eventueel ontvangen client_assertion, of de aud erin verwijst naar de AS GTK, en of de iss erin verwijst naar een vertrouwde issuer binnen TWIIN.

Ongeldige client

statuscode 400 Bad Request, error=invalid_client

Het systeem genereert de vereiste foutresponse en gaat verder met de exit stap van de main flow.

4

Het systeem controleert de geldigheid van een eventueel ontvangen assertion, of de aud erin verwijst naar de AS GTK, en of de iss erin verwijst naar een vertrouwde issuer binnen TWIIN.

Ongeldige grant

statuscode 400 Bad Request, error=invalid_grant

Het systeem genereert de vereiste foutresponse en gaat verder met de exit stap van de main flow.

5

Het systeem controleert de geldigheid van een eventueel ontvangen client_id, en indien van toepassing, of deze overeenkomt met de sub in de client_assertion.

Ongeldig verzoek

statuscode 400 Bad Request, error=invalid_request

Het systeem genereert de vereiste foutresponse en gaat verder met de exit stap van de main flow.

6

Het systeem toetst, m.b.v. ZORG-AB, of de primaire actor binnen het TWIIN afsprakenstelsel is gekwalificeerd, om namens de URA in de assertion, interacties te initieren zoals aangeduid door de scope van het request.

NB. omdat verwacht wordt dat ZORG-AB hiervoor niet tijdig geschikt zal zijn, wordt in eerste instantie gewerkt met een interne registratie in het systeem. Zie ook: registratie in ZORG-AB.

Primaire actor niet gekwalificeerd

statuscode 403 Forbidden, error=access_denied, error_description="Initiërende applicatie beschikt niet over de vereiste capabilities."

Het systeem genereert de vereiste foutresponse en gaat verder met de exit stap van de main flow.

7

Het systeem gebruikt Feature GetTokenRequest om een AORTA access_token te verkrijgen.

Hierbij worden de volgende attributen gebruikt:

  • client.organisationId - wordt gevuld met de sub uit de assertion

  • client.applicationId - wordt gevuld met het appID van Resource Broker GTK

  • destination.organisationId - wordt gevuld met de authorizer uit de assertion

  • scope - wordt gevuld met de ontvangen scope of met de scope die werd bepaald m.b.v. de contextcode uit een ontvangen consent_token

  • patient - wordt gevuld met de patient uit de assertion

  • authzBase - wordt, indien aanwezig, gevuld met de authorization_base uit de assertion

  • user.userId - wordt gevuld met het user_id uit de assertion

  • user.userRole - wordt gevuld met de user_role uit de assertion

8

<exit>

Het systeem retourneert een response naar de primaire actor.

Alle mogelijke uitkomsten van GetTokenRequest.

Post-condities

Het systeem heeft het verzoek op de juiste wijze verwerkt en heeft een daarbij passende response geretourneerd.

Het systeem heeft van het ontvangen request, de volgende attributen gelogd:

  • datum en tijd van ontvangst

  • request-id

  • initial-request-id

  • client role-id (slechts van toepassing wanneer de client een VZVZ component is, en de aanroep niet via TLS geschiedt)

  • client common name (slechts van toepassing wanneer de aanroep via TLS geschiedt)

Het systeem heeft van de geretourneerde response, de volgende attributen gelogd:

  • datum en tijd van response

  • request-id van het bijbehorende request

  • initial-request-id van het bijbehorende request

  • client role-id (slechts van toepassing wanneer de client een VZVZ component is, en de aanroep niet via TLS geschiedt)

  • client common name (slechts van toepassing wanneer de aanroep via TLS geschiedt)

  • HTTP statuscode en eventueel geretourneerde foutinformatie

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.