Feature #35895
openNode DB id moet niet in de ZGW API staan t.b.v. interne medewerkers maar de keycloack user uri
100%
Description
Ik wil graag de keylcoack URL hebben staan bij een betrokkene resource omdat de interne betrokkeneidentificatie alleen maar 24 characters toelaat.
Dit veld is de klein voor email adres. In sommige gevallen kan dit ingevuld worden door een samAccountName.

Zie ook extra informatie #34708#note-11
Acceptatiecriteria:- Ik verwacht in de betrokkeneidentificatie een samAccountName of een voornaam.acthernaam
- Ik ga de veld betrokkeneidentificatie matchen met de username Veld vanuit Keycloak
- Ik sla in de betrokkene de uri/url op naar de keycloak user representation
- In de response vanuit Keycloack sla ik ook meteen de extra gegevens op in de ZGW API zoals voornaam, achternaam & emailadres
- LETOP! we gaan geen gegevens overschrijven, dus als de aanleverende partij deze gegevens al goed invult, dan gaan we deze niet overschrijven.
- We gaan alleen lege velden invullen
- Deze extra gegevens slaan we op in geval dat Keycloack niet bereikbaar is of gemigreerd is en de resourceurls niet meer matchen
betrokkene string <uri> (betrokkene) <= 1000 characters URL-referentie naar een betrokkene gerelateerd aan de ZAAK.
- In geval van een niet matchende username of meer dan 1 hit uit Keycloack gaan we een error gooien en geen extra gegevens opslaan
- De risico van het juist aanleverende informatie ligt aan de aanleverende partij
Files
Updated by Tahir Malik 3 months ago
- Subject changed from Node DB id moet niet in de ZGW API staan t.b.v. interne medewerkers to Node DB id moet niet in de ZGW API staan t.b.v. interne medewerkers maar de keycloack user uri
Updated by Bram Geerlings 3 months ago
- Status changed from Backlog to In Progress
Updated by Tahir Malik about 2 months ago
- Tracker changed from Project activity to Feature
- Target version changed from Tezza 2025.12 to Tezza 26.Q1
- Parent task deleted (
#30430)
Updated by Bram Geerlings about 1 month ago
ยท Edited
Zoals overlegd met @Tahir Malik en @Rick de Rooij :
Het betrokkeneIdentificatie -> identificatie veld wordt op dit moment gebruikt om node-dbIds op te slaan. Hier willen we vanaf. Voorkeur is gebruikersnaam of e-mail adres te gaan gebruiken.
Om backwards compatibiliteit te houden moet er wel met node-dbIds om kunnen worden gegaan. Hier heeft @Rick de Rooij een helper voor geschreven die direct de nodeDao benaderd omdat via ElasticSearch deze property niet meer te bevragen is.
Gezien de callback nu werkt heeft ook de RemoveRolAction een refactoring moeten ondergaan. Deze werkt nu als volgt:
Wanneer er een call direct naar de actie wordt gedaan (bijvoorbeeld vanuit Tezza) wordt er altijd een authority meegegeven (username). In de actie worden voor de zaak alle rollen opgehaald, en van iedere rol de username. Deze wordt vergeleken met de username van de te verwijderen rol. Wanneer op de zaak in OZ een rol staat die dezelfde username teruggeeft als de aan de actie meegegeven authority wordt deze in OZ verwijdert.
Het verwijderen van de OZ rol triggert een callback. Deze callback roept opnieuw de actie aan, ditmaal zonder de authority. (deze is niet te herleiden uit de callback omdat de rolResource verwijderd is). In dit geval doet de actie een diff op de rollen in OZ ten opzichten van de rollen in Alfresco (tza:behandelaars en tza:initiator) en verwijderd rollen in Alfresco die niet langer zijn toegekend in OZ.
Het veld dat wordt gebruikt voor het vullen van betrokkeneIdentificatie-> identificatie wordt bepaald door de global property api.zrc.persoonIdentificatieProperty. Deze staat per default op userName.
De werking hiervan is handmatig, lokaal getest via de Tezza front-end en Postman API calls, en via IT in https://git.contezza.nl/develop/products/contezza-integration-tests/-/commits/feature/add-remove-betrokkene-callback/%2334726
Merge request voor tezza-services: https://git.contezza.nl/develop/products/tezza-services/-/merge_requests/111
Updated by Bram Geerlings 7 days ago
Opgelost in ticket https://support.contezza.nl/issues/34726
