This change will involve discussion with the team.
Rather than deleting a user, they could be hidden and no longer visible in the UI.
Hiding a user would immediately prevent them from accessing the software (removing access and permissions), while still retaining their app resources and other associated information. This can be beneficial if the user needs to be removed from the software (retirement, contracted help, leaving the institution) but the data associated with them still needs to be preserved.
Some important components that can be lost upon the deletion of a user are:
Schema mappings for exports
Queries associated with reports and labels
Reports and labels associated with queries
Form definitions and other important app resources
Hiding a user can also be useful for archiving purposes. Hiding a user rather than deleting them can also be a more secure and reliable way to manage user accounts, as deleting a user completely is more difficult and potentially more vulnerable to data loss.
Due to the long list of cascading deletion behaviors we face a lot of issues when admins attempt to delete users and realize that they have a multitude of associated records preventing deletion, and often deleting those results in an error.
Alternatives:
Add the ability to reassign their resources to the current user or another specified user (useful for transferring reports, labels, app resources, etc.)
Improve deletion behavior by better communicating the impact of the deletion (show a preview of the report being lost, show all associated records with an explanation of their purpose)
This change will involve discussion with the team.
Rather than deleting a user, they could be hidden and no longer visible in the UI.
Hiding a user would immediately prevent them from accessing the software (removing access and permissions), while still retaining their app resources and other associated information. This can be beneficial if the user needs to be removed from the software (retirement, contracted help, leaving the institution) but the data associated with them still needs to be preserved.
Some important components that can be lost upon the deletion of a user are:
Hiding a user can also be useful for archiving purposes. Hiding a user rather than deleting them can also be a more secure and reliable way to manage user accounts, as deleting a user completely is more difficult and potentially more vulnerable to data loss.
Due to the long list of cascading deletion behaviors we face a lot of issues when admins attempt to delete users and realize that they have a multitude of associated records preventing deletion, and often deleting those results in an error.
Alternatives: