Project

General

Profile

Feature #35895

open

Node DB id moet niet in de ZGW API staan t.b.v. interne medewerkers maar de keycloack user uri

Added by Tahir Malik 3 months ago. Updated about 16 hours ago.

Status:
In Progress
Priority:
P4 Normal
Category:
-
Target version:
Start date:
24/01/2024
Due date:
% Done:

100%

Estimated time:
(Total: 0.00 h)

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

clipboard-202512081456-tihok.png (213 KB) clipboard-202512081456-tihok.png Tahir Malik, 08/12/2025 02:56 PM

Subtasks 1 (0 open1 closed)

Bevinding #32324: Betrokkenen pagina: Vanuit Tezza wordt in Open Zaak het veld 'roltoelichting' misbruikt (Analyse)ClosedTahir Malik24/01/2024

Actions
Actions #2

Updated by Tahir Malik 3 months ago

  • Description updated (diff)
Actions #3

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
Actions #4

Updated by Bram Geerlings 3 months ago

  • Description updated (diff)
Actions #5

Updated by Bram Geerlings 3 months ago

  • Status changed from Backlog to In Progress
Actions #6

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)
Actions #7

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

Also available in: Atom PDF