VNG-Realisatie / gemma-zaken

Samen ontwikkelen van API's voor Zaakgericht werken
https://vng-realisatie.github.io/gemma-zaken/
Other
41 stars 26 forks source link

Zaakbetrokkenen/rollen - hoe omgaan met machtigingen? #2435

Closed sergei-maertens closed 2 months ago

sergei-maertens commented 3 months ago

Ik ben bezig met een opdracht om machtigingen (DigiD, eHerkenning) op een generieke manier in de keten werkbaar te maken. Heel kort samengevat zijn er verschillende smaken van machtigen die op moment van "aanvraag" (verzoek / zaakinitiatie) vastgelegd moeten worden zodat op een later moment dit weer getoetst kan worden om security en privacy by design te kunnen toepassen.

In de Zaken API zijn er een aantal constructies die hiervoor nuttig lijken, alleen zijn er nog wat dubbelzinnigheden die opgehelderd moeten worden voor een goed ontwerp.

  1. de Rol resource heeft een relatie met het roltype, wat een rolomschrijvingGeneriek kent. Hierbinnen lijken vooral de typen initiator en belanghebbende relevant. Als ik RGBZ 2.0 lees, dan interpreteer ik:

    • Wanneer een partij (natuurlijk persoon of bedrijf) gemachtigd is, dan dient deze als initiator opgegeven te worden (met indicatieMachtiging: gemachtigde)
    • De machtiginggever dient als belanghebbende rol/betrokkene toegevoegd te worden (met indicatieMachtiging: machtiginggever)

    Dit impliceert dan ook dat als de machtiginggever op hun "MijnGemeente" omgeving inlogt, ze de zaken moeten kunnen zien (en muteren als input nodig is) waarbij ze een belanghebbende (met indicatiemachtiging "machtiginggever") zijn.

  2. Hoe werkt dit mechanisme als er meerdere rollen op eenzelfde zaak toegevoegd worden allemaal met indicatieMachtiging: gemachtigde? Kan dit überhaupt? Wat betekent dat dan functioneel?

HenriKorver commented 2 months ago

Wat betreft punt 1 is jouw interpretatie inderdaad de meest logische. M.a.w. je gebruikt de rol initiator voor de "gemachtigde" en de rol belanghebbende voor de "macchtiginggever". Dit is ook precies het voorbeeld wat in de toelichting van het RGBZ wordt beschreven.

Echter er wordt (helaas) niet uitgesloten dat het attribuut "indicatieMachtiging" ook op andere rollen mag worden toegepast hoewel de meeste andere combinaties zeer onlogisch lijken. Zie onderstaande screenshot:

afbeelding

Hetzelfde geldt voor de Zaken API daar kun je dit attribuut ook op alle rollen toepassen. Dus helaas is de standaard niet scherp op dit punt.

Met deze implicatie ben ik het niet eens:

Dit impliceert dan ook dat als de machtiginggever op hun "MijnGemeente" omgeving inlogt, ze de zaken moeten kunnen zien (en muteren als input nodig is) waarbij ze een belanghebbende (met indicatiemachtiging "machtiginggever") zijn.

Volgens mij doet de Zaken API geen uitspraken over welke toegangsrechten er verbonden zijn met bepaalde machtigingen.

Wat betreft je vragen bij punt 2: Het is dus (helaas) mogelijk om een indicatieMachting op meerdere rollen te geven ook al zijn de meeste combinaties niet logisch.

sergei-maertens commented 2 months ago

Met deze implicatie ben ik het niet eens:

Dit impliceert dan ook dat als de machtiginggever op hun "MijnGemeente" omgeving inlogt, ze de zaken moeten kunnen zien > > (en muteren als input nodig is) waarbij ze een belanghebbende (met indicatiemachtiging "machtiginggever") zijn.

Ik bedoelde deze niet als "implicatie van de standaard", maar implicatie voor praktisch gebruik van de Zaken API in een MijnOmgeving :smiley:

Er lopen dienstverleningswensen rondom machtigen, en wij vinden het logisch dat de gemachtigde en machtiger allebei op de MijnOmgeving de behandeling van de zaak kunnen opvolgen (al dan niet met rechten om documenten toe te voegen, maar dat is buiten de scope van de Zaken API).

Wij zijn vooral op zoek naar de plek waar we extra machtigingsinformatie vast kunnen leggen om ervoor te zorgen dat iemand die de zaak als gemachtigde gestart heeft deze later kan opvolgen op voorwaarde dat bepaalde authenticatie-eisen voldaan zijn. Een concreet voorbeeld is dat een gemachtigde de zaak start met DigiD betrouwbaarheidsniveau Hoog. Als deze dan een week later op een MijnOmgeving inlogt met DigiD betrouwbaarheidsniveau Substantieel, dan moet de MijnOmgeving de zaken kunnen filteren die gestart zijn met DigiD betrouwbaarheidsniveau substantieel of lager (dus de eerder gestartte zaak mag niet zichtbaar zijn!).

Het lijkt er nu op dat we deze extra informatie zullen moeten vastleggen op de rol en dat we dit niet op de zaak zelf kunnen vastleggen, want er kunnen dus meerdere betrokkenen/rollen zijn met een indicatieMachtiging.

HenriKorver commented 2 months ago

Het lijkt er nu op dat we deze extra informatie zullen moeten vastleggen op de rol en dat we dit niet op de zaak zelf kunnen vastleggen, want er kunnen dus meerdere betrokkenen/rollen zijn met een indicatieMachtiging.

Dat lijkt mij ook 👍