Add feature to remove Plus site users that have been dropped from the upstream roster

Description

When a Plus site is launched from a main site, the roster is retrieved using NRPS (Names and Roles Provisioning Service) and all of the user accounts are created and added to the Plus site. If a student drops the course or is otherwise removed form the main site, they can be manually removed from the Plus site (i.e. its Realm).

This Jira adds two features to automate the process of removing accounts from the Plus site that are no longer in the main site. After each roster retrieval via NRPS, SakaiPlus checks is there any students who have not been in the roster for a week and deletes those students from the Realm.

If the student launches into the Plus site - they are re-added or if they re-appear in the Roster at a future time, they are re-added to the Realm - the good news is that their student activity data is retained even if they are removed from the realm. So the delete and future re-add is pretty much transparent to the student.

This Jira also adds support for two optional site properties that can be set on the Plus site to control this automatic behavior:

plus:expire_minutes (default 7 days)

plus:nrps_delay_seconds (default is 300 seconds for an instructor launch and 1800 seconds for a student launch.

The defaults for these should work pretty well. These properties do make testing much easier however.

Attachments

1

Activity

Show:

Andrea Schmidt June 14, 2023 at 10:39 PM

This is working in both 24x: https://trunk-maria.nightly.sakaiproject.org/, build: 8bbac7af
23x: https://qa23-maria.nightly.sakaiproject.org/, build: c5e26f4a

Charles R Severance May 18, 2023 at 10:12 PM

Since this is already merged - lets make a new JIRA.

Andrea Schmidt April 18, 2023 at 11:12 PM

This is not working as expected. Since this has already been merged to 23x, do you want a separate Jira?
When clicking the Plus link in the Plus site, I see the membership updated, but looking at the gradebook, the students that were removed are still present.

24x: https://trunk-maria.nightly.sakaiproject.org/, build:7f56ea8a

Automation for Jira February 11, 2023 at 5:58 PM

A pull request has been created, "SAK-48443 - Auto-expire users that fall off the the Plus roster", you can see it at https://github.com/sakaiproject/sakai/pull/11237

Fixed

Details

Priority

23 Status

QA Verification Pass

Components

Assignee

Reporter

Created February 11, 2023 at 4:53 PM
Updated December 2, 2023 at 2:49 PM
Resolved February 14, 2023 at 7:23 PM