Project

General

Profile

Bevinding #34647

closed

Alfresco API ​/people​/{personId}​/sites geeft niet de correcte rol terug

Added by Diego Mirandola 7 months ago. Updated 3 months ago.

Status:
Closed
Priority:
P4 Normal
Assignee:
Category:
-
Target version:
-
Start date:
28/08/2025
Due date:
% Done:

100%

Estimated time:

Description

Alfresco API ​/people​/{personId}​/sites https://alf.boku.ac.at/api-explorer/#/sites/listSiteMembershipsForPerson geeft niet de correcte rol terug.
Als de gebruiker lid is van een site via meerdere bronnen tegelijkertijd (bijvoorbeeld via meerdere groepen en/of direct) dan verwacht ik om de leidende rol terug te krijgen, met de ranking:
  1. manager
  2. collaborator
  3. contributor
  4. consumer
Maar de leidende rol wordt teruggegeven volgens deze (verkeerde) ranking:
  1. manager
  2. contributor
  3. consumer
  4. collaborator

Bijvoorbeeld: als de gebruiker lid is van drie groepen en de eerste groep collaborator is in de site, de tweede groep contributor is en de derde groep consumer is, dan is de gebruiker lid van de site met rol collaborator, want deze is de hoogste van de drie rollen. Dit wordt correct teruggeven door api /api/sites/{shortname}/memberships https://github.com/Alfresco/alfresco-community-repo/blob/master/remote-api/src/main/resources/alfresco/templates/webscripts/org/alfresco/repository/site/membership/memberships.get.desc.xml en door de share UI. Api /people​/{personId}​/sites geeft rol 'contributor' terug.

Na een eerste analyse, lijkt het probleem in deze logica te zijn https://github.com/Alfresco/alfresco-community-repo/blob/master/repository/src/main/java/org/alfresco/repo/site/SiteServiceImpl.java#L3094
Site memberships worden op basis van de lijst van gebruikersgroep geëvalueerd. Als de gebruiker lid is van site x met rol consumer, dan is hij/zij lid van GROUP_site_x_SiteConsumer, en zo voort voor de andere rollen.
In deze logica worden alle gebruikersgroepen opgehaald. Ik vermoed in alfabetische volgorde.
Deze groepen worden achter elkaar geëvalueerd om de site membership te bepalen en elke site membership overschrijft de vorige.
In het bovenstaande voorbeeld is de gebruiker lid van
  1. GROUP_site_x_siteCollaborator
  2. GROUP_site_x_siteConsumer
  3. GROUP_site_x_siteContributor

in alfabetische volgorde, dus rol 'collaborator' wordt volgens deze logica overschreven door alle andere rollen.


Files

clipboard-202512191500-mtrj8.png (67.6 KB) clipboard-202512191500-mtrj8.png Rick de Rooij, 19/12/2025 03:00 PM

Related issues 1 (0 open1 closed)

Related to Tezza - Project activity #34593: Admin-Tools: ik wil graag inzicht hebben van welke Sites met welke rol de gebruiker lid isResolvedDiego Mirandola21/08/2025

Actions
Actions #1

Updated by Diego Mirandola 7 months ago

  • Description updated (diff)
Actions #2

Updated by Diego Mirandola 7 months ago

  • Related to Project activity #34593: Admin-Tools: ik wil graag inzicht hebben van welke Sites met welke rol de gebruiker lid is added
Actions #3

Updated by Diego Mirandola 7 months ago

  • Assignee set to Rick de Rooij
Actions #4

Updated by Rick de Rooij 7 months ago

  • Status changed from New to On Hold
  • Target version deleted (Tezza Backlog)
  • % Done changed from 0 to 40

Ik heb ticket aangemaakt #02014778.

https://community.hyland.com/en/support/support-cases?case=02014778&hsi=38043

Ik zet hem op Hold in afwachting van reactie.

Actions #5

Updated by Rick de Rooij 7 months ago

Reactie Hyland:

Hi Rick

Thanks for your patience while I've been investigating this for you.

I can see and have replicated the issue you're seeing here. I have raised this as a defect Jira now (ref: MNT-25309).

Once I have more information on the progress of this Jira, I'll reach back out to you.

Best regards,

Rob Hatton

Alfresco Cloud Support Analyst

Hyland

Actions #6

Updated by Rick de Rooij 3 months ago

Ik ga dit ticket sluiten. Wanneer er een update komt, zal wel even duren.

Also available in: Atom PDF