/info/me.json is not updated on role removal

Steps to reproduce

We just noticed LTI information is not properly refreshed when removing roles from groups (but it does when added)

Steps to reproduce:

1. Start Opencast with groups SAKAI and SAKAI_INSTRUCTOR (without any roles)
2. Log into Sakai with a valid user (eg: Instructor)
3. Open LTI tool and then /info/me.json on a new TAB
Several groups might been displayed (eg: SITE_Learner, SITE_Instructor, ROLE_SAKAI, ROLE_SAKAI_INSTRUCTOR...)
4. Go to admin panel on another browser and add a role to group (eg: added ROLE_API_EVENTS_VIEW to ROLE_SAKAI_INSTRUCTOR)
5. Refresh /info/me.json
A new role ROLE_API_EVENTS_VIEW has been added (Everything ok until here!)
6. Go to admin panel on another browser and remove a role to group (eg: removed ROLE_API_EVENTS_VIEW from ROLE_SAKAI_INSTRUCTOR)
7. Refresh /info/me.json
8. The previous role is still shown (while it shouldn't)

Actual Results:

The role is still shown

Expected Results:

The role being removed

Workaround (if any):

Exit LTI tool (switch to another Sakai tool) and come back, in order to refresh the cache


Stephen Marquard
August 24, 2017, 7:44 AM

My guess is that this is related to cache invalidation, and is not specific to LTI - you would probably see this by logging in with an internal Opencast user with username/password as well.






Incorrectly Functioning With Workaround