Toegangscontrole: Raadplegen van de Uitstelperiode door het zorgkantoor (UCLR-0007)¶
Warning
Voor de controle op de toegang van deze query is er een PIP controle nodig. De toets of dit mogelijk met de huidige informatie mogelijk is, is moet nog plaatsvinden. De query kan nog wijzigen, wat effect kan hebben op het schema.
Beschrijving van de toegangscontrole door de Policy Decision Point (PDP) en indien van toepassing Policy Information Point (PIP).
N.b. Het valideren van de Acces-token door de PEP is geen onderdeel van de ze beschrijving.
Toegangscontrole PDP¶
Subject¶
- Entiteit: Zorgkantoor, verantwoordelijk of uitvoerend
- Kenmerk: In bezit van een access-token met daarin de eigen
uzovicode
Action¶
- Type:
raadplegen(read) - Omschrijving: Uitvoeren van GraphQL-query
QLR-0007-ZK.graphqlgraphql op het Leveringsregister door een zorgkantoor
Resource¶
- Type:
Wlz Leveringsregister - ID:
uitstelperiodeID;bemiddelingspecificatieID - Beperking: Alleen toegang tot gegevens van de Uitstelperiode (en overige informatie) waarvoor het zorgkantoor:
- Aan te merken is als het uitvoerend zorgkantoor voor de Bemiddelingspecificatie waaraan de Uitstelperiode via Levering is gekoppeld;
- Aan te merken is als een verantwoordelijk zorgkantoor, die betrokken is bij dezelfde Bemiddeling waaronder de Bemiddelingspecificatie valt waaraan de Uitstelperiode via Levering is gekoppeld.
- Inhoud: Alle nodes, behalve
VerzoekenVerzoekAanbieder, in het GraphQL-schema die horen bij dezeUitstelperiodemogen direct worden opgevraagd
Context¶
- Query-parameters vereist: Het
uitstelperiodeIDenbemiddelingspecificatieIDmoeten zijn meegegeven in de query - Toegangsvoorwaarde: Er is alleen toegang als aan alle volgende voorwaarden is voldaan:
- De parameter
uitstelperiodeIDenbemiddelingspecificatieIDzijn aanwezig in de query; - De access-token bevat een geldige
uzovicodevan het zorgkantoor; - In het Bemiddelingsregister bestaat er een
BemiddelingspecificatiemetbemiddelingspecificatieIDzoals in de query meegegeven waarbij:- Het
uitvoerendZorgkantoorovereenkomt met deuzovicodeuit de access-token, óf - Het
verantwoordelijkZorgkantoorinBemiddelingdie hoort bij dezebemiddelingspecificatieIDovereenkomt met deuzovicodeuit de acces-token.
- Het
Resultaat¶
Toegang tot het Leveringsregister via query
QLR-0007-ZK.graphqlgraphql is alleen toegestaan als:
- Parameter
uitstelperiodeIDenbemiddelingspecificatieIDzijn meegegeven in de query- De access-token bevat een geldige
uzovicode- In het Bemiddelingsregister is een match gevonden tussen:
- De
uzovicode(uit de access-token)- En een
BemiddelingspecificatiemetbemiddelingspecificatieIDzoals in de query meegegevenIndien aan deze voorwaarden is voldaan, mogen alle bijbehorende GraphQL-nodes (m.u.v.
VerzoekenVerzoekAanbieder) worden opgevraagd conform de structuur van de query-template
Toegangscontrole-flows Zorgkantoor uitvoerend: QLR-0007-ZK.graphql¶
Beschrijving van het autorisatieproces door de PEP.
schematisch:
---
config:
theme: neutral
look: classic
---
stateDiagram
direction TB
[*] --> indienen
indienen --> validerenT
state PEP {
direction TB
validerenT --> validerenR: access-token is geldig
state PDP {
validerenR --> checkInput01
state check01 <<choice>>
checkInput01 --> check01
check01 --> checkInput02:ja
check01 --> error:nee
state PIP {
state check02 <<choice>>
checkInput02 --> check02
check02 --> error:nee
check02 --> access:ja
}
error
access
}
}
error --> [*]
access --> resource
resource --> [*]
PEP:Autorisatie controle PEP
PDP:Toegangscontrole PDP
PIP:Contextinformatie controle PIP
indienen: Ontvang QLR-0007-ZK + Access token
validerenT: Valideer access token
validerenR: Valideer Request
checkInput01:uitstelperiodeID en bemiddelingspecificatieID aanwezig?
checkInput02:Is het zorgkantoor volgens Bemiddelingsregister betrokken bij de bemiddelingspecificatie?
error:geen toegang tot Resource
access:toegang tot Resource
resource: Query mag door naar Leveringsregister
style validerenR,checkInput01,checkInput02 fill:#FFD600
style valideer2 fill:#C8E6C9
style error fill:#D50000
style access,Query,resource fill:#00C853
style indienen fill:#BBDEFB,color:none
| # | Toelichting |
|---|---|
| 1. | Ontvangst GraphQL-request + access-token door PEP |
| 2. | De PEP valideert de access-token en geeft na goedkeur het request door aan de PDP |
| 3. | De PDP controleert op:
- Ja → Controle context-informatie door PIP: stap 4 - Nee → geen toegang tot de resource - Einde proces (geen toegang.) |
| 4. | De PIP controleert in het Bemiddelingsregister op de aanwezigheid van een Bemiddelingspecificatiemet bemiddelingspecificatieID zoals meegegeven in de query waarbij:
- Ja → Toegang tot de resource: stap 5 - Nee → geen toegang tot de resource - Einde proces (geen toegang.) |
| 5. | Het zorgkantoor krijgt toegang tot alle entiteiten (m.u.v. Verzoek en VerzoekAanbieder) die bij de Levering horen waar de uitstelperiodeID uit de query bij hoort. |
| 6. | Einde |
Controle query PIP: ```gql query PIPValidatie ( $bemiddelingspecificatieID: UUID! # afkomstig uit query $uzovicodeZorgkantoor: String! # afkomstig uit Access-token ) { bemiddelingspecificatie( where: { bemiddelingspecificatieID: { eq: $bemiddelingspecificatieID } or: [ { uitvoerendZorgkantoor: { eq: $uzovicodeZorgkantoor } } { bemiddeling: { verantwoordelijkZorgkantoor: { eq: $uzovicodeZorgkantoor } } } ] } ) { bemiddelingspecificatieID uitvoerendZorgkantoor bemiddeling { bemiddelingID verantwoordelijkZorgkantoor } } }